поморите с Cpp ощибкой
Пользователи, просматривающие топик: none
|
Зашли как: Guest
|
Имя |
Сообщение |
<< Старые топики Новые топики >> |
|
|
поморите с Cpp ощибкой - 2007-06-20 15:38:02.220000
|
|
|
L.win
Сообщений: 20
Оценки: 0
Присоединился: 2007-06-08 18:30:12.490000
|
На следующий код void GLTransform :: mkMatrix (const GLVector3d & vec, double angx, double angy, double angz) { double x = vec.getx(); } компилятор почему-то выдает passing `const GLVector3d' as `this' argument of `double GLVector3d::getx()' discards qualifiers ? Разве вызов функции по ссылке на екземпляр класска (с функцией getx все в порядке: описана как public и реализована) это противозаконно? В чем ошибка и главное как правильно? кто знает подскажите?
|
|
|
RE: поморите с Cpp ощибкой - 2007-06-20 18:03:06.690000
|
|
|
Mystic.asm
Сообщений: 53
Оценки: 0
Присоединился: 2007-06-17 18:19:29.466666
|
Может быть, функция getx() не объявлена как const?
|
|
|
RE: поморите с Cpp ощибкой - 2007-06-20 19:38:18.456666
|
|
|
L.win
Сообщений: 20
Оценки: 0
Присоединился: 2007-06-08 18:30:12.490000
|
это не обходимо? нет, все равно не помогает.
|
|
|
RE: поморите с Cpp ощибкой - 2007-06-20 21:57:40.563333
|
|
|
rgo
Сообщений: 7170
Оценки: 281
Присоединился: 2004-09-25 05:14:25
|
стопроцентов ты объявил getx неправильно, надо так:class GLVector3D
{
public:
inline GLdouble getx () const {
return x;
}
};
|
|
|
RE: поморите с Cpp ощибкой - 2007-06-20 22:08:24.673333
|
|
|
Mystic.asm
Сообщений: 53
Оценки: 0
Присоединился: 2007-06-17 18:19:29.466666
|
Это я и имел в виду) В данном случае const означает, что функция не изменяет члены класса. Рекомендуется добавлять этот параметр для всех функций, которые не изменяют содержимое класса.
|
|
|
RE: поморите с Cpp ощибкой - 2007-06-21 10:18:28.936666
|
|
|
L.win
Сообщений: 20
Оценки: 0
Присоединился: 2007-06-08 18:30:12.490000
|
спасибо)
|
|
|
|
|