gpt4 book ai didi

c++ - 具有类名的数据成员

转载 作者:可可西里 更新时间:2023-11-01 17:57:31 26 4
gpt4 key购买 nike

标准说,“如果成员是静态数据成员、成员函数、成员类型、成员模板、无作用域枚举的枚举数、成员匿名 union 的成员,则类 T 的成员不能使用 T 作为其名称。但是,只要没有用户声明的构造函数,非静态数据成员就可以使用名称 T。”

但是如果我创建这个类,它会给出一个编译错误。

class G
{
int G;
};

我正在使用 VS2013。 Microsoft 或 中不允许吗?

最佳答案

如果 VC++ 不允许这样做,那就是一个错误。

但是,这种语言“特性”是为了C兼容性,微软决定不强调C。例如,C99的特性在被C++采用之前通常是不可用的。永远不要故意在 C++ 中声明这样的成员。

(在C中默认是允许的:对成员的命名没有限制,所有成员都是非静态数据成员。)

关于c++ - 具有类名的数据成员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31898093/

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