【问题标题】:Scope inside class of C++ [duplicate]C ++类内的范围[重复]
【发布时间】:2017-12-19 13:54:14
【问题描述】:
class cl { 
    public:
        cl(int i) { val=i; }
        int val;
        int double_val() { return val+val; }
};

变量 val 在构造函数之后声明,它分配它。但是这段代码仍然有效。 'val' 不是超出构造函数的范围吗?

【问题讨论】:

  • @Downvoter,投反对票的原因是什么?此问题包含minimal reproducible example,以及明确且具体的问题。如果投反对票的原因是“没有研究”,您可以建议重复。

标签: c++


【解决方案1】:

类的完整定义对其成员可用。所以val实际上是在构造函数实现之前声明的。

【讨论】:

    猜你喜欢
    • 2011-11-25
    • 2023-04-06
    • 2012-08-21
    • 1970-01-01
    • 1970-01-01
    • 2019-10-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多