您的位置:首页 > 编程语言 > C语言/C++

从一个小程序说起 - C++快速入门02

2011-05-17 16:31 531 查看

从一个小程序说起

让编程改变世界

Change the world by program

这一讲的主要目的是帮助大家在C语言的背景知识上与C++建立联系。我们会通过用C++编写相同功能的C程序来实现。

如果在这一讲中大家可能大家会遇到一些不大面熟的术语,请不必郁闷。

这些术语如“类”、“异常”、“对象”……对这些词语概念不理解,并不会影响我们这一讲的主体学习内容!大家有兴趣的话可以课后问问度爷,在后续章节我们会陆续给大家作正式介绍的。

问题探索

问题:对一个整型数组求和。

要求:定义一个存储着 n 个元素的数组,要求用C语言完成这个任务。

赶紧的:大家一起动手!

我们的参考方案:(源代码下载)

深入一点思考

数组名与指针的关系:在《C专家编程》中作者采用大篇幅对C的数组和指针作了对比来跟我们说数组和指针他们的关系很复杂。

为了发展大家的探索精神,这里我们也学着自己来分析分析。

在刚才的例子中,我们加点“料”试试~

然后我们还能得出第二个版本的程序:(源代码下载)

轮到C++了

以上两个程序从本质上来说是相同的,我们得出结论:将函数的参数声明为数组和声明为指针是一样的。

现在我们来考虑一个新的问题:将该程序用C++来实现试试。

参考例子:addArray.cpp(源代码下载)

程序分析

这个小程序展示了C++对象的第一次使用。对象在哪里?就是这个”cout“。

cout 是一个输出流对象,它是”console out(控制台输出)“的缩写。是属于basic_ostream 类的对象。ostream 类在iostream头文件中定义。

注意……

什么是输出流?

其实也就是一个概念,在C++中引入了很多类似的概念:例如数据可以从键盘流入程序,又可以从程序流向屏幕、打印机等~
using namesapce std;

这条指定带给我们一个全新的概念:名字空间。

就是C++标准库所使用的所有标识符(即类、函数、对象等的名称)都是在同一个特殊的名字空间(std)中来定义的。

如果我们没有使用这条指令,我们将需要使用std::cout 这样的语法来调用输出流对象。

不知道大家有没有注意到“<<”这个符号很眼熟?

这个操作符不是C语言里边位运算的左移操作符吗?难道在C++里边改规则了?

事实上不是这样的,它只不过体现了C++的另一个特点:支持重载。重载事实上就是允许我们按照不同的方式使用同一个操作符。我们后边会详细讲解。

课后思考

要求:编写一个程序,要求用户输入一串整数和任意数目的空格,这些整数必须位于同一行中,但允许出现在该行中的任何位置。当用户按下键盘上的“Enter”键时,数据输入结束。程序自动对所有的整数进行求和并打印出结果。

请看演示:homework.exe(演示程序下载)

[buy] 获得所有教学视频、课件、源代码等资源打包 [/buy]
[Downlink href='http://urlxf.qq.com/?jUvMn2V']视频下载[/Downlink]
[Downlink href='http://kuai.xunlei.com/d/LRBOQGNTDZYL']备胎下载[/Downlink]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: