1.1 初识C++的函数和对象
1.C++和C语言的关系
C++是一种优秀的高级程序设计语言,它是以C语言为基础而逐渐发展起来的。
C++语言既保留了传统结构化程序设计方法,又对流行的面向对象程序设计方法提供了完整的支持。
此外,C++语言还具有许多C语言不支持的新功能和新特性。
具体区别我觉得这里讲的更详细,各位没事可以瞅瞅:
C语言和C++ C?的区别在什么地方?https://www.zhihu.com/question/21610243
2.函数原型和命名空间
函数原型
函数原型类似函数定义时的函数头,为了能使函数在定义之前就能被调用,C++规定可以先说明函数原型,然后就可以调用函数,函数定义可放在程序后面。由于函数原型是一条语句,因此函数原型必须以分号结束。函数原型由函数返回类型、函数名和参数表组成,它与函数定义的返回类型、函数名和函数表必须一致。函数原型不必包含参数的名字,可只包含参数的类型。例如:int area(int,int);等价于int area(int a,int b);。说明:系统标准函数并没有在包含文件中定义,而只是提供了函数原型。在调用函数时,系统会正确的调用库函数。
注:函数原型与函数定义必须一致,否则会引起编译错误。
命名空间
所谓命名空间(namespace)是一种将程序库名称封装起来的方法,它提高了程序的性能和可靠性。C++标准程序库中的所有标识符都被定义于一个名为std的namespace中。C语言一直使用扩展名“.h”标识头文件,而新的C++标准引入了新的标准类库的头文件载入方式,即省略“.h”。但是这时必须使用以下语句:
using namespace std; // 使用命名空间
3.对象和预处理
对象代表待处理问题的实体,从概念上讲,对象是包含数据和处理这些数据的操作的程序单元。
在C++程序中,预处理程序是在编译器翻译阶段开始之前自动执行的。C++预处理程序完成对“预处理指令”的处理。预处理指令表示程序编译之前要进行的某些处理操作。这些处理操作通常包含在要被编译的文件中,如包含指令及文本替换指令等。预处理命令以“#”开头,例如,标准的输入输出是定义在标准库iostream中的,所以要同时用到如下两条语句:
#include <iostream>
using namespace std;
4.C++程序的基本结构
这是一个最简单的C++程序:
看图能看懂的我就不细写了哈ヽ(??▽?)ノ懒:
注释行:C++中提供了“行”和“块”两种注释方法。
预处理命令:C++中每一个以符号“#”开头的行都是预处理命令。使用预处理命令可以更好的进行程序的组织。本图中的预处理命令“#include <iostream>”的作用是将头文件iostream的内容加入到程序中。iostream是一个C++标准头文件,其中定义了一些输入输出流对象。
主函数声明:主函数是所有C++程序开始执行的入口,无论主函数处于程序中的什么位置,其中的代码总是被最先执行。按照C++语言的规定,每个程序都必须有且仅有一个主函数,主函数名称必须为main。main前面的int表示主函数main返回一个Int类型的值。main后面的圆括号“()”说明它是一个函数。可以没有内容,也可以包含函数的参数。
函数主体:由“{}”括起来的就是函数主题。
C++语句:图中本条C++语句,它完成了此程序的主要功能,即向屏幕上输出一行字符串。cout是C++中的标准输出流对象,它通常代表计算机的屏幕。cout在标准头文件iostream中被声明,因此要使用它就必须先包含此文件。“<<”是输出操作符,功能是将它右边的内容输出到它左边的指定设备上。这里,要输出的内容是用双引号括起来的字符串"This is a simple C++ program.\n",其中“\n”是换行符。本行末尾的分号“;”表示这条语句的结束。在C++中所有的语句都要以分号结束。
return语句:它的功能是使主函数main结束并将整数0返回给运行此程序的操作系统。返回整数0表示程序在执行过程中没有发生任何错误而正常结束。实际上,按照C++标准,本行是可以省略的。如果在主函数main中不写“return 0;”语句,程序正常结束时也会自动向操作系统返回0。
PS:在学习之后的课程我都尽量使用MinGW和Notepad++来实现书本中的所有实例,别问为什么,因为懒的找其他的IDE。(ノへ ̄、)
原文地址:http://blog.51cto.com/13550568/2114500