size_t t;
int i = (int)t;
Вопрос по warning в VC++
[COLOR=blue]warning C4267: '=' : conversion from 'size_t' to 'int', possible loss of data[/COLOR]
Понятно что проблема с типами данных но в моей
проге это не слишком важно.
Можно както попросить среду разработки не писать
предупреждение по такому случаю на пример ?
Цитата:
Originally posted by BigBug
Получаю кучи предупреждений подобного рода.
[COLOR=blue]warning C4267: '=' : conversion from 'size_t' to 'int', possible loss of data[/COLOR]
Понятно что проблема с типами данных но в моей
проге это не слишком важно.
Можно както попросить среду разработки не писать
предупреждение по такому случаю на пример ?
Получаю кучи предупреждений подобного рода.
[COLOR=blue]warning C4267: '=' : conversion from 'size_t' to 'int', possible loss of data[/COLOR]
Понятно что проблема с типами данных но в моей
проге это не слишком важно.
Можно както попросить среду разработки не писать
предупреждение по такому случаю на пример ?
#pragma warning( disable : 4267 )
Цитата:
Originally posted by mail0
#pragma warning( disable : 4267 )
#pragma warning( disable : 4267 )
Не советовал бы это делать, так как рано или поздно ты действительно при таких приведениях потеряешь данные, а так как компилятор тебе об этом не намекнет, будешь очегь долго и нудо искать баг.
Цитата:
Originally posted by PitxBull
Не советовал бы это делать, так как рано или поздно ты действительно при таких приведениях потеряешь данные, а так как компилятор тебе об этом не намекнет, будешь очегь долго и нудо искать баг.
Не советовал бы это делать, так как рано или поздно ты действительно при таких приведениях потеряешь данные, а так как компилятор тебе об этом не намекнет, будешь очегь долго и нудо искать баг.
Поддерживаю.
Используй явные преобразования типов:
Код:
а ещё правильнее так:
Код:
size_t t;
int i = static_cast<int>(t);
int i = static_cast<int>(t);
Цитата:
Originally posted by Green
Поддерживаю.
Используй явные преобразования типов:
а ещё правильнее так:
Поддерживаю.
Используй явные преобразования типов:
Код:
size_t t;
int i = (int)t;
int i = (int)t;
а ещё правильнее так:
Код:
size_t t;
int i = static_cast<int>(t);
int i = static_cast<int>(t);
На самом деле я полностью с вами согласен и
вобщемто преобразования типов для меня не новость.
Но что делать если я лентяй :)