加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

具有相同名称的C变量,context:global和private,

发布时间:2020-12-16 10:49:52 所属栏目:百科 来源:网络整理
导读:在以下代码中,g给出了以下错误: 1.cpp:在成员函数void W :: test()’中: 1.cpp:6:错误:int F :: glob’是私有的 1.cpp:19:错误:在这种情况下 但是,不应该全球宣布 相反,变量’glob’在这里使用 “私人”“全球”? #include iostream.h int glob; c
在以下代码中,g给出了以下错误:
1.cpp:在成员函数void W :: test()’中:
1.cpp:6:错误:int F :: glob’是私有的
1.cpp:19:错误:在这种情况下

但是,不应该全球宣布
相反,变量’glob’在这里使用
“私人”“全球”?

#include <iostream.h>

    int glob;
    class F
    {
        int glob;
        public:
        void readIt()
        {
            cin >> glob;
        }
    };

    class W : public F
    {
        public:
            void test()
            {
                glob--;
            }
    };

    int main()
    {
    }

解决方法

使用范围规则访问变量和函数,而不是可见性规则.因为F :: glob是W :: test()范围内的glob,所以使用它.但是,W :: test()无法访问F :: glob,并且会产生错误.编译器不会检查:: glob,因为在“优先级”范围内还有其他东西(对于确切的术语不确定).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读