private (C++)
private:
[member-list]
private base-class
Заметки
Список членов класса, предшествующие private ключевое слово, указывающее, что эти элементы доступны только из функций-членов и friends класса.Это применяется ко всем элементам объявлена до следующего описателя доступа или конца класса.
Имя базового класса, предшествующие private ключевое слово, указывающее, что открытые и защищенные члены базового класса закрытые члены производного класса.
По умолчанию доступ к членам в классе закрытым.По умолчанию доступ членов в структуре или объединении открытым.
По умолчанию доступ к закрытым базового класса для классов и открытый для структур.Соединения не могут иметь базовые классы.
Дополнительные сведения см. в разделе friend" Открытый" protectedи доступа к членам в таблице Управление доступом к членам класса.
Конкретные /clr
В типах среды CLR, ключевые слова доступа (описателя C++Открытый" privateи protected) может повлиять на видимость типов и методов в отношении сборок.Дополнительные сведения см. в разделе Видимость типов и членов.
Примечание |
---|
Файлы компилированные с /LN не применяется к данной реакцией на событие.В этом случае все управляемые классы (или открытым или закрытым) будут видимы. |
Пример
// keyword_private.cpp
class BaseClass {
public:
// privMem accessible from member function
int pubFunc() { return privMem; }
private:
void privMem;
};
class DerivedClass : public BaseClass {
public:
void usePrivate( int i )
{ privMem = i; } // C2248: privMem not accessible
// from derived class
};
class DerivedClass2 : private BaseClass {
public:
// pubFunc() accessible from derived class
int usePublic() { return pubFunc(); }
};
int main() {
BaseClass aBase;
DerivedClass aDerived;
DerivedClass2 aDerived2;
aBase.privMem = 1; // C2248: privMem not accessible
aDerived.privMem = 1; // C2248: privMem not accessible
// in derived class
aDerived2.pubFunc(); // C2247: pubFunc() is private in
// derived class
}