У меня возникли проблемы с МСВС компилятором, у меня есть следующий код:Как игнорировать неинициализированные переменные ошибки в MSVC
if (!list) {
*type = raw_data[*i++];
ptr = (char*) &size;
ptr[1] = raw_data[*i++];
ptr[0] = raw_data[*i++];
name = new char[size+1];
memcpy (name, raw_data+*i, size);
name[size] = '\0';
*i += size;
}
И далее:
if (!list) {
s->name = name;
s->name_size = size;
}
Значение списка не изменение этой функции, однако я не могу скомпилировать код из-за этой ошибки:
Error 1 error C4703: potentially uninitialized local pointer variable 'name' used
Я нахожу это невероятно раздражающим что это не предупреждение, а ошибка. Изменение bool на const bool тоже не помогает. Кто-нибудь знает, как игнорировать эту конкретную ошибку в Visual Studio, но все же показывать другие ошибки/предупреждения?
Как о добавлении инициализации для имени, например, 'символ * имя (0);'? –
Есть ли причина не использовать 'std :: string'? Я думаю, вы, возможно, знаете, что операция назначения в вашем случае является мелкой копией. – Mahesh
В соответствии с http://msdn.microsoft.com/en-us/library/vstudio/jj851030.aspx это предупреждение. Вы можете использовать '#pragma warning (disable: 4703)' или лучше исправить код. – Jarod42