C++ Primer Plus读书笔记(九)内存模型和名称空间

1、作用域和链接

int num3;
static int num4;

int main()
{
}

void func1()
{
    static int num1;
    int num2;
}

上边的代码中num1 和num2 只适用于func1,区别在于num1 在func1没有被调用时也存在于内存中。

num4 只适用于当前文件。

 

2、说明符和限定符

一个比较特殊的  mutable 。对于某些使用const变量被修改,例如

struct node
{
    int num1;
    mutable int num2;
};

const node n;

n.num2++; //allow

3、命令空间

namespace element
{
    namespace fire    //嵌套
    {
        int num1;
    }
    int num2;
}

使用的时候这么用

using namespace element::fire;

//or

element::fire::num2;

 

上一篇:函数进阶3


下一篇:第五章 python的函数(5):函数嵌套和匿名函数