您的位置:首页 > 编程语言 > C语言/C++

C++学习总结概要记录

2014-08-25 17:06 155 查看
asm:这个关键字命令编译器尽可能的将变量存在CPU内部寄存器中,而不是通过内存寻

址访问,从而提高效率。登记册关键字指定变量是要在计算机中存储的注册

mutable:这个关键字只适用于非静态和非const数据类成员。如果一个

声明数据成员是可变的,那么它是合法的赋值从这个数据成员

aconst成员函数

volatile

说明变量在程序执行中可被隐含地改变,表明某个变量的值可能在外部被改变,优化器在用到这个变量时

必须每次都小心地重新读取这个变量的值,而不是使用保存在寄存器里的备份。

extern std::string name("exercise 3.5a")是定义.

const int &rval3 = 1;//合法

int &rval3 = 1;//非法

ispunct(ch)//判断是否是标点符号;

单粒模式:构造函数定义在保护成员里,public里定义static成员函数来构造初始化实例。一般私有成员里定义指向本类的指针。

//单粒模式例子start

class CSingleton

{

public:

static CSingleton *GetInstance()

{

cout << __FUNCTION__<<"111" << endl;

return &m_Instance;

}

void prin()

{

cout<<cstr<<endl;

}

protected:

private:

static CSingleton m_Instance;

char cstr;

// hide constructor

CSingleton()

{

cout << __FUNCTION__<<"222" << endl;

cstr='1';

}

};

CSingleton CSingleton::m_Instance;

//单粒模式例子end

函数参数的默认形参是从末尾开始算起,int fun(int x,int y,int z=0);

静态成员变量可以被成员函数访问,但静态成员函数只能访问静态成员变量

选择容器类型法则:

vector,deque------------程序要求随机访问元素。

list--------------------中间位置插入删除元素。

deque-------------------首尾插入删除元素。

map---------------------关联值和关键字,通过关键字访问到值,自动排序快速访问元素。

继承规则:

public继承:基类的public为派生类的public成员,protected也为派生类的protected成员.

protected继承:基类的public和protected为派生类的protected成员。

private继承:基类的所有成员都为派生类的private成员。

派生类只能初始化自己的直接基类,不能初始化间接基类。

纯虚函数----只为派生类提供可覆盖接口,用户不能创建该类的对象。

C++/C 语言没有办法知道指针所指的内存容量,除非在申请内存时记住它。

(1)如果派生类的函数与基类的函数同名,但是参数不同。此时,不论有无virtual

关键字,基类的函数将被隐藏(注意别与重载混淆)。

(2)如果派生类的函数与基类的函数同名,并且参数也相同,但是基类函数没有virtual

关键字。此时,基类的函数被隐藏(注意别与覆盖混淆)。有virtual则是覆盖。覆盖就是看不见,隐藏就是通过类名::函数名可以访问到

gcc/g++ -o test test.c

数组动态分配-----编译时不知道大小的数组,运行时才知道,int *p=new int
,这个n可以是调用函数的返回值也可以是前面经过计算的结果。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: