Можно ли однозначно сделать указатель функции typedef от соответствующей функции typedef?Создание указателя функции typedef из функции typedef в C++?
// Can I define fx_pt in terms of fx_t without duplicating the signature?
// Does decltype allow for any new sort of trick here?
using fx_t = char(int, char, std::vector<float> const &);
using fxp_t = char(*)(int, char, std::vector<float> const &);
// Using function typedef to enforce interface for declarations and definitions.
fx_t foo, bar, baz;
char foo(int) { /* ... */ }
// Using fp typedef elsewhere as normal.
fxp_t whatever{bar};
whatever(99);
Я никогда не ожидал ничего о функции (указатель) ЬурейеЕ синтаксис, чтобы быть полностью интуитивно понятным для меня, но я не был в состоянии определить, является ли устранение дублирования кода возможно.
Это может связать в более серьезную проблему преобразования между классом/примитивными определениями типами и классом/примитивным указателем определениями типами, которые я помню слушание не являемся переносимыхами конвертируются между ...
+1 Лучше, чем моя. : D – 0x499602D2
Вау, я идиот. Благодаря! – Jeff
'std :: add_pointer' стоит упомянуть ИМХО, хотя он делает практически то же самое (http://en.cppreference.com/w/cpp/types/add_pointer) – zahir