static const extern 关键字

来源:互联网 发布:ubuntu创建新用户组 编辑:程序博客网 时间:2024/05/17 06:24

static用法
1. static成员变量

class Task {public:private:    static unsigned n;//static数据成员不会影响该类及其对象的sizeof};unsigned Task::n = 0;
  1. 类成员函数
    static成员函数只能访问static成员,非static都可访问
  2. 函数体内的static变量
    作用范围为函数体,内存只被分配一次。
  3. 模块内的static变量与static函数只能被模块内的函数访问或调用,不能被模块外的其他函数访问。

const关键字用法

class C {    public:        void set (const string &n) { name = n; }        const string& get() const { return name; }    private:        string name;};
  1. 定义常量:const int i = 0;需在定义时初始化。
  2. cosnt修饰形参:const string &n表明是一个输入参数,函数内部不能改变其值。
  3. cosnt成员函数(只读函数):位于参数与函数体间的const表示该函数不会改变类的任何数据成员的值。
  4. 返回类型前的const:const string& get() const { return name; }此处的const表明谁也不能通过这个引用来修改数据成员name的值。

另: 1. const成员函数仅能调用其他const成员函数
2. const对象只能调用const成员函数和非const类型析构函数。
3. 非const对象可以调用const类型函数。

extern关键字用法
http://www.swanlinux.net/2013/05/14/c_extern/

0 0
原创粉丝点击