C++基础知识

C++中的 const修饰的是一个常量:

  • const常量正常情况下内存不会为其分配空间,而是存在符号表中
  • 使用的时候去符号表中取值
  • 如果对const常量进行取地址操作,则编译器会为其分配一块空间,但是,它本身并不会使用
  • 建议用 const 替换 宏常量

建议用 const 替换 宏常量

  • const 和 define 的区别
    define是预处理的处理,做的工作是完全替换,在程序中会有多个备份
    const 是编译的时候处理,会进行变量的类型和作用域检测,只在符号表中有一个备份
  • const 和 define 的相同点:
    定义常量

命名空间的定义:
定义一块命名空间,名字叫 NameA
原来全局空间可以做的事情,命名空间都可以做:定义变量、函数、宏、结构体、枚举…

namespace NameA
{
    int g_a;
}

命名空间的使用:
通过命名空间名字和 域解析符(::) 引用空间中的成员

NameA::g_a = 10;

通过 using 声明来使用整个命名空间
using 声明只在当前作用域有效

开启命名空间NameA,之后使用NameA中的成员不用再加域解析符

using namespace NameA;
 g_a = 10; 

通过 using 声明来使用命名空间中的某个成员

using NameA::add;   // 之后使用 NameA 的add 不需要再加域解析符

默认命名空间使用

using namespace NameA;
    NameA::g_a = 10;

// 默认命名空间成员直接用域解析符  ::  来引用
::g_a = 20;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值