Требуется создать указатель на функцию at() стандартного вектора, например std::vector.
Но код:
typedef std::vector<int> vi;
typedef int& (vi::*viFnPtr)(int);
viFnPtr fp = &vi::at;//ошибка
выдает ошибку преобразования функции at() к типу
int& (class std::vector<int>::*)(int)
В чем может быть дело?
Попробуйте указать точнее, с верными сигнатурами, что именно вы хотите:
typedef std::vector<int> vi;
typedef const int& (vi::*viFnPtrC)(size_t) const;
viFnPtrC fpc = &vi::at;
typedef int& (vi::*viFnPtr)(size_t);
viFnPtr fp = &vi::at;
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости