gpt4 book ai didi

c++ - 如何忽略 MSVC 中未初始化的变量错误

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:59:44 39 4
gpt4 key购买 nike

我在使用 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 的值在这个函数中没有改变,但是由于这个错误我无法编译代码:

Error 1 error C4703: potentially uninitialized local pointer variable 'name' used

我发现这不是警告而是错误,这让我非常恼火。将 bool 更改为 const bool 也无济于事。有人知道如何忽略 Visual Studio 中的这个特定错误,但仍然显示其他错误/警告吗?

最佳答案

我怀疑您正在向编译器传递 /sdl 选项,该选项告诉编译器将 4703(以及各种其他内容)视为错误而不是警告。

在对安全性偏执的情况下,将此视为错误是有道理的 - 编译器无法证明您正在做的事情是安全的,因此它不会让代码通过。如果你不想这样,请关闭 /sdl

关于c++ - 如何忽略 MSVC 中未初始化的变量错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18559425/

39 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com