gpt4 book ai didi

c++ - '警告 C4709 : comma operator within array index expression' - but no comma to be seen anywhere!

转载 作者:可可西里 更新时间:2023-11-01 15:24:40 27 4
gpt4 key购买 nike

以这个小示例代码为例:

struct Test{
operator int() const{
return 0;
}
};

Test test(){
return Test();
}

int main(){
int arr[10];
arr[test()] = 5;
}

在 Visual Studio 2010 下使用 /W4 编译生成 said warning .有趣的是,如果我只添加一个简单的默认构造函数,警告就会突然消失。此外,它仅适用于该星座。如果我删除函数调用或不返回用户定义的类型,警告就会消失。此外,正如预期的那样,GCC 不会产生此类警告。

那么,我是否可以将上述代码的警告视为 Visual Studio 中的一个错误,或者它是否比看起来更重要?至少可以说,这会非常令人惊讶。


编辑:创建了一个bug report on Microsoft Connect .

最佳答案

绝对是一个错误 - 误导性警告。

关于c++ - '警告 C4709 : comma operator within array index expression' - but no comma to be seen anywhere!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6012068/

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