Re: const-корректность методов
От: FoolS.Top Армения  
Дата: 06.01.09 21:03
Оценка:
Здравствуйте, LightGreen, Вы писали:

LG>Пример упрощённый, взятый из реального проекта.

LG>
LG>class A
LG>{
LG>  int a;
LG>  bool state;
LG>  void set(int& x) const
LG>  {
LG>     x = 1;
LG>  }
LG>  void modify( A& a ) const
LG>  {
LG>     a.x++;
LG>  }
LG>  void hack()
LG>  {
LG>     set(a);
LG>     modify(*this);
LG>  }
LG>};
LG>

LG>Код без проблем компилируется и выполняется (VC++ 8.0).
LG>Интересно, что это — недоработка компилятора или приоритет non-const int& и A&
LG>над const-модификатором метода?

Я не понял, кто здесь x? У меня дает error C2039: 'x' : is not a member of 'A' (VS 2008).
Feierlich, misterioso
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.