Ошибка компилятора C2663
"function": перегрузки чисел не имеют юридических преобразований для указателя "this"
Компилятору не удалось преобразовать this
ни в одну из перегруженных версий функции-члена.
Эта ошибка может быть вызвана вызовом функции, не являющейсяconst
членом объекта const
. Возможные разрешения:
const
Удалите из объявления объекта.Добавьте
const
одну из перегруженных функций-членов.
Следующий пример приводит к возникновению ошибки C2663:
// C2663.cpp
struct C {
void f() volatile {}
void f() {}
};
struct D {
void f() volatile;
void f() const {}
};
const C *pcc;
const D *pcd;
int main() {
pcc->f(); // C2663
pcd->f(); // OK
}