> class Test > { > public: > CString member; > void Test() const //Зачем надо этот const > { > member.Format("%d",5); //Вызывает ошибку > } > }; A za tem i nuzhen chto by ty ne modificiroval data members.
> class Test > { > public: > CString member; > void Test() const //Зачем надо этот const > { > member.Format("%d",5); //Вызывает ошибку > } > }; A za tem i nuzhen chto by ty ne modificiroval data members.
[C++] А как же так?24.05.02 19:22 Автор: Disaррear Статус: Незарегистрированный пользователь
Функции со спецификатором const предназначены только для чтения данных и могут быть вызваны для объектов со спецификатором const, вто время, как функции без спецификатора const этого сделать не могут.
Вся эта байда мутится для того, чтобы случайно не поменять данные в теле такой функции.
А для модификации данных внутри таких функции используется конструкция ((имя_класса*)this)->... И если такая конструкция встречается, то она наверняка не случайна.
[C++] A ne poshli by vy sad?!24.05.02 20:55 Автор: + <Mikhail> Статус: Elderman