essential c++ 第一章总结,知识记录。
1.C++程序都是从一个main()函数开始,而main不是程序定义的关键字,但是执行c++编译系统时,会假设程序中定义有main()函数。
而如果没有main()函数,程序将无法执行。
2.类,class的定义一般分为两部分,分别写在不同的文件中。(1)为头文件,用来声明该class所提供的各种操作行为 (2)另一个,则为程序代码文件,包含了这些操作行为的实现内容。
3.定义自己的类时,也应该为每一个class提供它们自己的output运算符
4.初始化时,内置的一些类型可以直接用赋值(assignment =)运算符直接赋初值,而一些自己的class类型,或是需要多个初值的类型,则需要通过构造函数法赋初值。
5.类模板template class机制,使程序员得以知道使用template class时,才决定真正的数据类型。例如:class<class type> object
6.基本数据类型就4个,整型,浮点,字符,布尔。一些细节需要记,int,float,double,long double,char,bool。 还有字符类型的转义字符\\ \' \'',单引号即为字符,双引号内为字符串。区别于python的都可以用。
7.表达式中的运算符,包括算术,逻辑,关系,复合赋值。 其常见的一些优先级需要记忆。 逻辑:NOT,AND,OR,OR的短路机制也需要了解。 ! || &&。 ++a 和a++的区别需要记忆:先自加后提交和先提交再自加。
8.控制语句:条件语句和循环语句。
常用关键字:(1)if() (2)if() else (3)if() else if() else if() .... else
switch() case 1: ...... default: break;
while()
for( ; ; )
break和continue的区别。
9.array和vector,容器类型。
array是需要先定义好容量大小,还要监控其当前的大小。
vector则会动态的分配其大小。
vector初始化只能为每个元素指定其值,再就是用一个已经初始化的array作为该vector的初值。vector<int> elem_seq(elem_vals,elem_vals+seq_size); elem_vals是一个已经赋初值的array:int elem_vals[seq_size]={1,2,3,4,5,6,......18};
10.指针的赋值和提领操作:int *pi = &a &为取地址符。 要得到a的值,可以使用其地址提领:*pi即为pi地址下的对象,即为a。
11.文件的读写:在fstream库中,ifstream input_file("file_addr")即为读取操作,ofstream output_file(“file_addr”)即为写入操作。
希望自己能快速的刷完吧~ ^^