c++11 auto为什么自己的不支持类成员变量类型推导?

请大家务必给出详细的答案谢谢... 请大家务必给出详细的答案谢谢 展开
 我来答
microroom
科技发烧友

2020-03-02 · 智能家居/数码/手机/智能家电产品都懂点
知道大有可为答主
回答量:7118
采纳率:83%
帮助的人:1530万
展开全部
因为auto是根据初始化表达式来推断变量的类型的,如:
auto n=100;,因为100是int类型的常量,所以,可推断出n的类型为int。
但c++类中的成员变量是不能在声明的时候进行初始化的,如:
class C
{
auto a=1;
};
以上auto a=1;是不允许的,因为它在声明a的时候初始化了a。
如果改成这样:
auto a;
又会因为没有初始化表达式,无法推断出a的类型,这也是不被允许的。所以,auto不能用于类成员变量的类型推导中。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式