【C++快速上手】十五、域作用符 ::

举报
ReCclay 发表于 2022/02/21 23:18:58 2022/02/21
【摘要】 一、域作用符分类 1、全局作用域符(::name):用于类型名称(类、类成员、成员函数、变量等)前,表示作用域为全局命名空间2、类作用域符(class::name):用于表示指定类型的作用域范围是具体某...

一、域作用符分类

  • 1、全局作用域符(::name:用于类型名称(类、类成员、成员函数、变量等)前,表示作用域为全局命名空间
  • 2、类作用域符(class::name:用于表示指定类型的作用域范围是具体某个类的
  • 3、命名空间作用域符(namespace::name:用于表示指定类型的作用域范围是具体某个命名空间的

二、配合代码消化理解

下面代码主要用来理解一下 全局作用域符(::name)和 类作用域符(class::name)。

#include <iostream>
using namespace std;

int count=0;    // 全局(::)的count

class A {
public:
    static int count;  // 类A的count (A::count)
    
};

// 静态变量必须在此处定义
int A::count;
int main() {
    ::count=1; // 设置全局的count为1
    A::count=5; // 设置类A的count为2
    cout<<A::count<<endl;
//    int count=3; // 局部count
//    count=4;     // 设置局部的count为4
    return 0;
}

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21

命名空间作用域符(namespace::name):拿上述代码来说,当不加using namespace std;这一句时,想要调用cout就需要写成std::cout了。

文章来源: recclay.blog.csdn.net,作者:ReCclay,版权归原作者所有,如需转载,请联系作者。

原文链接:recclay.blog.csdn.net/article/details/114086980

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。