1 开始学习C++
1. 参考资料:
《C++ Primer Plus(第五版)》。
2. 学习总结:
(1) main()函数
必须要有一个main()函数,执行时从main()函数开始执行。
函数:函数头+函数体。函数头对函数与整个程序的其他部分之间的接口进行了总结;函数体是指出函数具体应该做什么的指令。
(2) C++注释
支持 /*...*/ 形式的注释和 // 形式的注释,前者不可嵌套 /*...*/, 但可嵌套 //。
(3) 预编译
程序编写过程:写C++程序(得到源代码) -> 预编译 -> 编译(得到目标代码) -> 链接(生成可执行文件) -> 执行。
预编译是在主编译之前的处理,它将以#开头的编译指令进行处理。#开头的指令主要有:#include 头文件; #define 标识/常数/函数; #if ... #else... #endif等。
(4) 头文件
头文件命名规则:
C++旧式风格(与C风格一样):以 .h 结尾;
C++新式风格:没有扩展名,例如 #include <iostream> 中的iostream;
转换后的C头文件:没有扩展名,文件名第一个字母为c,例如 cmath。
(5) 名称空间
不同厂商或者团队合作时不同的开发人员可能对函数等去相同的名字,在调用时应该区别对待。
using编译指令可以指定使用名称空间。using namespace std;表示使用std命名空间。 using std::cout;表示使用std中的cout,即该作用域内的cout都是std命名空间里所指的cout。
也可以不使用using指令。举例说明:假设开发者A的命名空间stsd中命名了一个函数叫cen(),开发者B的命名空间td中命名了一个函数也叫cen()。在使用时分别这样写stsd::cen() 和 td::cen().
(6) 使用 cout 进行输出
endl是一个控制符,表示重起一行(这时相当于\n),并且刷新输出缓冲区。
C++支持\n形式的换行符。
(7) C++源代码的格式化
C++中,分号标示了语句的结尾,回车与空格的作用差不多,如下格式是合法的:
#include <iostream>
int
main
() {using
namespace
std;
cout<<"haha"
<<endl;
return 0; }
(8) C++语句
C++可以连续使用赋值操作符,a=b=c=0;是合法的。
(9) 编译器分配和标记内存(例如编译器遇到函数声明时就这样处理)