Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
operator: ongeldige bewerking voor de expressie van de afhankelijke lidfunctie
Opmerkingen
De compiler heeft een probleem gevonden met de syntaxis die wordt gebruikt voor het maken van een aanwijzer naar lid.
Er wordt vaak een fout C2276 veroorzaakt wanneer u probeert een aanwijzer naar lid te maken met behulp van een exemplaarvariabele om het lid te kwalificeren in plaats van een klassetype. Mogelijk ziet u deze fout ook als u een lidfunctie probeert aan te roepen met behulp van de verkeerde syntaxis.
Example
In dit voorbeeld ziet u verschillende manieren waarop C2276 kan optreden en hoe u deze kunt oplossen:
// C2276.cpp
class A {
public:
int func(){return 0;}
} a;
int (*pf)() = &a.func; // C2276
// pf isn't qualified by the class type, and it
// tries to take a member address from an instance of A.
// Try the following line instead:
// int (A::*pf)() = &A::func;
class B : public A {
public:
void mf() {
auto x = &this -> func; // C2276
// try the following line instead
// auto x = &B::func;
}
};
int main() {
A a3;
auto pmf1 = &a3.func; // C2276
// try the following line instead
// auto pmf1 = &A::func;
}