C++Primer(二)

1.预处理器为以#开头的语句,表示编译指令。include导致预处理器在程序代码被编译之前,替换或添加文本。

2.使用cin和cout进行输入和输出的程序必须包含文件istream。C++98标准:

#include<iostram>
using namespace std;

3.C语言的传统是,头文件使用扩展名h,将其作为一种通过名称标识文件类型的简单方式。C++用法变了,C++头文件没有扩展名,有些C头文件被转换为C++头文件,这些文件被重新命名,去掉了扩展名h,并在文件名称前面加上前缀c。

4.using编译指令。命名空间(namespace)旨在让您编写大型程序以及将多个厂商现有的代码组合起来的程序时更容易,他还有助于组织程序。下面一行代码

/*偷懒的做法*/

using namespace std;
/*更好的方法是,只使所需的名称可用*/
using std::cout;
using std::endl;
using std::cin;

5.控制符:endl是一个特殊的C++符号,表示一个重要的概念:重起一行。在输出流中插入endl将导致屏幕光标移到下一行开头。诸如endl等对于cout来说有特殊含义的特殊符号被称为控制符。

6.换行符”\n”取代endl可减少输入量。endl确保程序继续运行前刷新输出(将其立即显示在屏幕上);而使用”\n”不能提供这样的保证。

7.一行代码中不可分割的元素叫做标记(token)。通常,必须用空格、制表符或回车将两个标记分开,空格、制表符和回车统称为空白(white space)。

8.cout 的智能行为-根据数据类型将相应类型转为字符串插入到输出流并打印到输出设备上-源自C++的面向对象特性(运算符重载)。

9.类是用户定义的一种数据类型。要定义类,需要描述它能够表示什么信息和可对数据执行哪些操作。类之于对象就像类型之于变量。

10.标准C库提供了140多个预定义的函数。

11.和C一样(不同与Pascal。)C++不允许将函数定义嵌套在另一个函数定义中。

12.main函数的返回值为int型,可以将计算机操作系统(如UNIX或Windows)看作调用程序。因此,main()的返回值并不是返回给程序的其他部分,而是返回给操作系统。退回值为0则意味着程序运行成功,为非零则意味着存在问题。因此,如果C++程序无法打开文件,可以将它设计为返回一个非零值。然后设计一个外壳脚本或批处理文件来运行程序。如果该程序发出指示失败的消息,则采取其他措施。

13.总之,让程序能够访问名称空间std的方法有多种,下面是其中4种:1.将using namespace std;放在函数定义之前,让文件中所有的函数都能够使用名称空间std中所有的元素。2.将using namespace std;放在特定的函数定义中,让该函数能够使用名称空间std中的所有元素。3.在特定的函数中使用类似using std::cout;这样的编译指令,而不是using namespace std;,让该函数能够使用指定的元素,如cout。4.完全不使用编译指令using,而在需要使用名称空间std中的元素时,使用前缀std::,如下所示:std::cout<<”I’m  using cout and endl from the std namespace.”<<std::endl;

14.个人的命名风格也是值得注意的——它有助于保持一致性和精确性。

15.华氏温度=1.8*摄氏温度+32.0

 

posted @ 2015-03-31 09:54  白纸书画  阅读(133)  评论(0编辑  收藏  举报