Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
till vänster om ".identifier" måste ha klass/struct/union
Anmärkningar
Operanden till vänster om perioden (.) är inte en klass, struktur eller union.
Example
I följande exempel genereras C2228:
// C2228.cpp
int i;
struct S {
public:
int member;
} s, *ps = &s;
int main() {
i.member = 0; // C2228 i is not a class type
ps.member = 0; // C2228 ps is a pointer to a structure
s.member = 0; // s is a structure type
ps->member = 0; // ps points to a structure S
}
Det här felet visas också om du använder felaktig syntax när du använder hanterade tillägg. I andra Visual Studio-språk kan du använda punktoperatorn för att komma åt en medlem i en hanterad klass, men en pekare till objektet i C++ innebär att du måste använda operatorn -> för att få åtkomst till medlemmen:
Fel: String * myString = checkedListBox1->CheckedItems->Item[0].ToString();
Höger: String * myString = checkedListBox1->CheckedItems->Item[0]->ToString();