V1.1主要以谭浩强的书籍为主
简单知识
- 与C语言(所有定义必须放在函数体最前面)相比,随用随定义
namespace用法类似公司分类
默认参数必须在最右边- 重载:关键在于参数个数和类型可以都不同,但参数名不满足重载
比如<<与>>也是重载
- 模板:
template <typename T>
T max(T a,T b,T c)
{
if(b>a)a=b;
if(c>a)a=c;
return a;
}
//然后直接调用就可以了,会根据具体的参数类型使用
- 内联:相当于代码块直接放在main里面(编译的时候)
- 引用必须初始化(结构体也是)
- 构造函数:在对象创建的时候自动执行相关代码
构造函数不能被用户调用
构造函数必须设定为公有地public
析构函数会自动执行的(程序结束后)- const(且常常与指针一起用)定义了常变量, 取代了C语言中#define
const float PI=3.14159
- 全局变量 ::(因为main会屏蔽全局变量,所以加上这个就是使用全局变量)
- 字符串变量
#include<string>
没有\0
结束符
可以直接比较大小- new delete动态分配和撤销内存空间
一般格式
>>new 类型[初始值] delete []变量 ([]表示到数组进行操作)
以下作为知识补充
中等知识
函数带冒号:等于赋值
A(int aa,int bb):a(aa),b(bb){}
=
A(int aa,int bb){a=aa;b=bb;}
?
复杂知识
vector用法:
作为向量,容纳多个类型,故称为容器
使用时需要包括头文件#include<vector>;