Я хотел бы упростить типирование auto const*const
конструкции, создавая что-то вроде ЬурейеЕМожет ли `auto const * const` вводиться в однотипный тип?
// (pseudocode)
using deepcp=auto const*const;
deepcp a=f(1),b=f(2),c=f(3);
auto lam=[](deepcp x,deepcp y,deepcp z){ return *x+*y+*z; };
Могу ли я добиться чего-то вроде tihs с C++? Может быть, шаблонные псевдонимы помогут?
Хм, отлично выглядит для инициализации переменных, но, похоже, не является достаточно общим для другой строки в примере OP - generic lambda. – Ruslan
Ну да, я думаю, я не был достаточно явным в OP. Лямбда должна была быть полностью общей. То есть он должен принимать вызов, например, например. 'Лам (getIntPtr(), getDoublePtr(), getMyCustomTypePtr())'. Думаю, это слишком много, потому что «auto» имеет совершенно иное значение для общих лямбда, чем для переменных. – Ruslan
@ Ruslan ах я вижу. Ну, для начала вы не играете на верхний уровень const. И другая константа тоже не является жизненно важной - если ваша проблема не сложнее, чем пример. Поэтому просто используйте '[] (авто, авто, авто)' и разыгрывайте все, что приходит. Имеет то преимущество, что он также будет работать, если вы передадите интеллектуальные указатели. –