忽略未初始化的變量錯誤,我有以下代碼:如何在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
我覺得它令人難以置信的煩人這不是一個警告,而是一個錯誤。將布爾改爲const布爾也無濟於事。是否有人知道如何忽略在Visual Studio此特定錯誤,但仍表現出其他錯誤/警告?
如何添加初始化爲名稱,例如,'字符*名(0);'? –
有什麼理由不使用'的std :: string'?我想你可能知道你案例中的賦值操作是淺拷貝。 – Mahesh
根據http://msdn.microsoft.com/en-us/library/vstudio/jj851030.aspx,這是一個警告。您可以使用'的#pragma警告(禁用:4703)'或更好的修復代碼。 – Jarod42