Ошибка С2143 в MS Visual C++

программирование программы windows C++ .net

Компилирую код, все было в порядке, пока не добавил класс камеры, потом стали вылезать странные ошибки:

Код:
/*--------------------------------------------------------------------------------------*/
...
GLuint list=0;

class camera
{
public:
int X;
int Y;
int Z;
void SetCamPos(int, int, int);
};

void camera::SetCamPos(int new_x, int new_y, int new_z)
{
camera.X = new_x; //Все ошибки вылезают тут,
camera.Y = new_y; //тут,
camera.Z = new_z; //и тут.
}


camera camera1;
...
/*---------------------------------------------------------------------------------*/

Ошибки:

1>o:\3dopengl\3dopengl\main.cpp(52): error C2143: синтаксическая ошибка: отсутствие ";" перед "."
+4 таких ошибки

В Dev C++ и C++Builder подобное всегда компилировалось без проблем. Помогите, пожалуйста
Ответы:
Зачем имя класса писать перед точкой в camera.X? просто X нужно или this->X. Поле-то не статическое!


13 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.