|
|
|
| Хочу глубже понять работу компилятора, не подскажете как C++ реализует спецификаторы доступа public: , private: , protected: . Какими способами С++ скрывает обьекты или предоставляет доступ к ним? Спасибо! | |
|
|
|
|
|
|
|
для: Shishkin
(20.05.2007 в 12:45)
| | наверно просто эти св-ва проверяются тока на уровне компиляции а в байт-коде конечно же доступ есть ко всему. | |
|
|
|
|
|
|
|
для: Shishkin
(20.05.2007 в 12:45)
| | Попробуйте дезассемблировать какое-либо приложение, написаное Вами и посмотрите что происходит с классами, спецификаторами доступа, это долго описывать... | |
|
|
|
|
|
|
|
для: mefestofel
(20.05.2007 в 22:28)
| | Я хотел сказать, что в принципе, все эти протектед и т п нужны только для того чтоб в них не запутался программист. то есть при компиляции проверяется, а не обращаетесь ли вы к запрещенной переменной. если нет, то прога дальше компилится и забывает про спецификаторы. в итоге получим приложение, в котором просто к переменным, для которых вы указывали спецификаторы, некоторые функции просто не обращаются. если вы уверены в правильности своей проги, то ставьте везде публик и получите на выходе ту же прогу. | |
|
|
|
|
|
|
|
для: mefestofel
(20.05.2007 в 22:28)
| | Я хотел сказать, что в принципе, все эти протектед и т п нужны только для того чтоб в них не запутался программист. то есть при компиляции проверяется, а не обращаетесь ли вы к запрещенной переменной. если нет, то прога дальше компилится и забывает про спецификаторы. в итоге получим приложение, в котором просто к переменным, для которых вы указывали спецификаторы, некоторые функции просто не обращаются. если вы уверены в правильности своей проги, то ставьте везде публик и получите на выходе ту же прогу. | |
|
|
|
|
|
|
|
для: alex19921992
(21.05.2007 в 14:59)
| | ;-)
взгляните на дезассемблированный код....
интересно же... | |
|
|
|