public static и т.д.
Привет всем.
Недавно начала изучать c++ и не понял что такое public, static и т.д. Вообще для чего они и что выполняют? |
Ответ: public static и т.д.
public, protected, private - определяют область доступности полей и методов класса
Код:
class A |
Ответ: public static и т.д.
Спасибо, взял что-то в голову.
Но не пойму чем помешает всегда иметь public? |
Ответ: public static и т.д.
Цитата:
|
Ответ: public static и т.д.
Цитата:
ps. в struct по умолчанию public |
Ответ: public static и т.д.
Цитата:
больше всего бесило когда тебе надо быстро успеть что-то переделать в проге, но для этого внезапно требуется доступ к данным, которые были в давние-давние времена в давних-давних классах, от которых всё зависит, помечены как private/protected, в результате приходилось тупо ждать рекомпила минутами. нафиг эти игры в чёрные ящики и сокрытие чего-то от самого себя, слава struct. да и куда детали реализации скрыты, если они все равно указаны в хидере и все равно будут выскакивать через intellisense? в каком-нибудь вижуал ассисте можно вроде настроить чтоб не выскакивали, но за такие игры с самим собой при участии платных тулз можно вообще премию почётного кретина выдать. |
Ответ: public static и т.д.
лучше пару минут подождать рекомпил, чем выискивать неделями баги из-за недостаточной инкапсуляции.
|
Ответ: public static и т.д.
Цитата:
|
Ответ: public static и т.д.
Цитата:
|
Ответ: public static и т.д.
|
Ответ: public static и т.д.
Цитата:
|
Ответ: public static и т.д.
|
Ответ: public static и т.д.
Mr_F_ у меня на работе весь проект по **зде пошёл, из-за подобных мыслей)
если состояние объекта (данные) необходимо менять\получать в каком-то левом модуле - вероятнее всего ты что-то делаешь не так. у нас, как следствие использования public везде, невозможно вычислить какого хрена где и почему какой-то баран, в своё время, решил поменять состояние объекта. В итоге выплывает куча багов, которые хрен отследишь. Система ТАК завязана на внутренней реализации каждого отдельного объекта, что уследить происходящее с каждым из них в любой момент времени - невероятный ад. А уж попытаться использовать функционал повторно или пытаться его расширить - мысли граничащие с фантастикой. Так что не стоит пренебрегать инкапсуляцией. |
Ответ: public static и т.д.
Согласен, что это может быть необходимо, если над проектом работает больше одного человека. Если пишешь чисто сам - тогда не думаю.
Ну и я в принципе не хочу писать тру ООП код, так что не собираюсь плодить и великие множества классов. |
Часовой пояс GMT +4, время: 16:28. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot