#c #class #private
#c #класс #Частное
Вопрос:
Я изучаю wxWidgets, и я нашел этот код в кроссплатформенном программировании с графическим интерфейсом с помощью wxWidgets на странице № 30:
class MyFrame : public wxFrame
{
public:
// Constructor
MyFrame(const wxStringamp; title);
// Event handlers
void OnQuit(wxCommandEventamp; event);
void OnAbout(wxCommandEventamp; event);
private:
};
Есть ли какой-то особый смысл писать private
в конце класса C ?
Комментарии:
1. Нет. Возможно, автор рассматривал возможность добавления дополнительных закрытых членов.
Ответ №1:
Я считаю, что это просто вопрос стиля кодирования или дисциплины кодирования или привычек.
Прочитайте эту ссылку на C и некоторый проект стандарта C , например, n3337.
В вашем конкретном случае private:
это бесполезно, поскольку class
после него ничего не появляется.
Но будущие участники wxWdigets сразу знают, куда следует добавить будущую закрытую функцию-член.
Ответ №2:
private
Ключевое слово в коде, которое вы опубликовали в его текущей форме, не имеет никакого смысла вообще. Даже если в классе был какой-то закрытый член, запись private
необязательна, поскольку члены класса являются частными, если не указано иное.
Но хорошей практикой является размещение общедоступной части класса сверху. Рациональным является то, что кто-то, просматривающий файлы заголовков, скорее всего, интересуется его общедоступным интерфейсом. Поэтому размещение public сверху полезно для удобства чтения.
В данном конкретном случае автор класса помещает private
туда, чтобы напомнить будущим авторам этого файла следовать вышеупомянутому стилю, например, сначала public .
Ответ №3:
Нет, особого смысла нет. Это явно указывает на то, что класс не содержит личных данных или методов. Вы можете рассмотреть возможность использования a struct
вместо class
и пропустить оператор public:
and private:
.
Ответ №4:
нет смысла. это просто используется для явного выражения.
Комментарии:
1. «явное выражение» чего? Ответ через 8 минут после другого, в котором более убедительно используется аналогичная формулировка и более понятно объясняется, следует проявлять больше осторожности, чтобы избежать впечатления «копировать и надеяться».