const-корректность методов
От: LightGreen  
Дата: 06.01.09 20:24
Оценка:
Пример упрощённый, взятый из реального проекта.
class A
{
  int a;
  bool state;
  void set(int& x) const
  {
     x = 1;
  }
  void modify( A& a ) const
  {
     a.x++;
  }
  void hack()
  {
     set(a);
     modify(*this);
  }
};

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