Подробности - Compiler Error C2065

Эта ошибка связана с отсутствием определения переделенной. Смотрим пример:

#include "stdafx.h"

int main(int argc, char* argv[])
{
	for (int x=0;x<y;x++)	//y не объявлена
	{
	}
	return 0;
}

Переменная y не определена:

D:\VС\TestError\TestError.cpp(12) : error C2065: 'y' : undeclared identifier

Основа этой ошибки в том, что переменную прежде чем использовать нужно объявить. А вот почему она не объявлена, может быть много случаев. Например, перепутаны верхние - нижние индексы в названиях.

#include "stdafx.h"

int main(int argc, char* argv[])
{
	int X;		// надо бы нижнем регистром
	for (int x=0;x<y;x++)
	{
	}
	return 0;
}

Отсутствие определения функции или переменной может быть связано с отсутствием заголовочного файла.

#include "stdafx.h"

int main(int argc, char* argv[])
{
	BOOL i;
	return 0;
}

Она просто не определена в заголовочном файле:

D:\VС\TestError\TestError.cpp(11) : error C2065: 'BOOL' : undeclared identifier

Она просто не определена в заголовочном файле. Надо включить windows.h и все станет на свое место.

Область видимости переменной может привести к появлению этой ошибки.

#include "stdafx.h"

int main(int argc, char* argv[])
{
	for (int x=0;x<10;x++)
	{
		for (int y=0;y<10;y++)
		{
		}
	}
	y=20;
	return 0;
}

И та же ошибка:

D:\VС\TestError\TestError.cpp(15) : error C2065: 'y' : undeclared identifier

Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем - 19.07.2001