Python Документация по классам - Неверная ссылка на C ++ - PullRequest
0 голосов
/ 10 февраля 2020

Python документация по классам относится к C ++ . Члены класса обычно public.

In C++ terminology, normally class members (including the data members) are public (except see below Private Variables), and all member functions are virtual. 

Python Классы

Я что-то здесь упускаю, поскольку доступ по умолчанию для членов класса C ++ private?

Ответы [ 2 ]

3 голосов
/ 10 февраля 2020

Вы просто неправильно читаете цитату.

" В терминологии C ++, " должно означать, что цитата объясняет (или приближает) поведение Python, используя некоторые термины с что означает c для C ++. Это не означает, что предложение объясняет поведение C ++.

" обычно члены класса " относится к членам Python class, а не к классу C ++ или ключевому слову C ++ class.

" являются публикующими c" - это место, где используется терминология C ++. В (1034 *) нет (реального) public / private различия поэтому все члены ведут себя так, как если бы они были объявлены public, если класс Python был переписан как класс C ++.


И для полноты: в C ++ члены класса могут быть либо private, либо public по умолчанию. Это зависит от того, введен ли класс с ключевым словом class, struct или union. Обратите внимание, что любое ключевое слово используется для представления класса, поэтому существует разница между языковой конструкцией C ++ class и ключевым словом C ++ class.

.
0 голосов
/ 10 февраля 2020

Я не уверен насчет контекста, в котором они написали это, но я думаю, что они имели в виду, что без явного упоминания модификаторов publi c или private access по умолчанию переменные и функции в классах установлены на publi c участников. Python устанавливает все свои переменные класса и функции для публикации c и оставляет ответственность за программиста без каких-либо модификаторов доступа.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...