类中的数组声明?

#include <iostream>using namespace std; const int i = 1; class T { char arr[i]; enum{i = 2}; }; int main() { getchar(); }

为什么这个可以编译通过哦?我看ISO文档草稿,标准里面<爱尬聊_百科词条>说那个重新定义了一个i是错的啊。我用clang,g++,vc编译都通过了。为什么编译器的实现不按照标准来呢?在《c++语言的设计和演化》一书中,说了这个是遵循ARM查找规则,但是不遵循ANSI/ISO标准。


排骨归来 2022-06-06 15:58

T::i字数补丁~


编辑 举报 2023-04-12 23:50

0个评论

暂无评论...
验证码 换一张
相关内容