essential c++ 1.C++基础

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”)即为写入操作。

 

希望自己能快速的刷完吧~ ^^

 

上一篇:Essential C++ 读书笔记 Ch4


下一篇:permu:莫队+线段树