MSVS コンパイラに問題があります。次のコードがあります。
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;
}
list の値はこの関数では変更されませんが、このエラーのためにコードをコンパイルできません:
エラー 1 エラー C4703: 初期化されていない可能性のあるローカル ポインター変数 'name' が使用されました
これが警告ではなくエラーであることは非常に腹立たしいと思います。bool を const bool に変更しても役に立ちません。Visual Studio でこの特定のエラーを無視する方法を誰かが知っていますが、それでも他のエラー/警告が表示されますか?