上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
1.2.5 C++程序组成
下面再看两个C++程序。
【例Ex_Simple1】 在屏幕上输出一个由星号形成的三角形
/// 输出星号的三角形阵列 #include<iostream> using namespace std; void DoDraw(int num); // 声明一个全局函数 int main() { int num=5; // 定义并初始化变量 DoDraw(num); // 函数的调用 return 0; // 指定返回值 } void DoDraw(int num) // 函数的定义 { for(int i=0; i<num; i++) // 循环语句 { for(int j=0; j<=i;j++) cout<<'*'; cout<<'\n'; } }
本程序包括两个函数:主函数main和被调用的函数DoDraw。DoDraw函数是在屏幕上输出星号的三角形阵列,这个阵列的行数以及每行星号的个数由num决定。程序运行的结果如下:
在以后的 C++程序运行结果中,本书不再完整显示其控制台窗口,也不再显示“Press any key to continue”,仅显示控制台窗口中运行结果部分,并加以单线阴影边框,本书做此约定。
【例Ex_Simple2】 用类的概念重写例Ex_Draw
#include <iostream> using namespace std; class CDrawArray // 定义一个类 { public: void CDrawArray::DoDraw(int num) // 公有成员函数有其实现 { for(int i=0;i<num;i++) { for(int j=0;j<=i;j++) cout<<'*'; cout<<'\n'; } } }; int main() { int num=5; CDrawArray myDraw; // 定义类的一个对象 myDraw.DoDraw(num); // 调用此对象的成员函数 return 0; // 指定返回值 }
虽然本程序的作用和例 Ex_Simple1 是一样的,但它引用了类的概念,是一个面向对象的 C++程序。程序中 class 后的名称是要定义的类名,该类仅声明了一个公共类型的成员函数 DoDraw。调用时,先定义该类的对象,然后像 myDraw.DoDraw(num)语句那样调用。程序运行的结果如前。
从以上几个例子可以看出,一个 C++程序往往由预处理命令、语句、函数、变量和对象、输入与输出以及注释等几个基本部分组成。
总之,C++将C语言作为自己的子集,并对C内容进行了许多提升和更新。其中一个最显著的特点是使用新的头文件格式以及名称空间。C++还融合了三种不同的编程模式:结构化程序设计模式、面向对象程序设计模式以及通用编程模式。
下一章将讨论C++程序中的数据类型和简单的输入/输出内容。