基于Eclipse的高效C++开发平台教程.doc

上传人:99****p 文档编号:1382048 上传时间:2019-02-23 格式:DOC 页数:173 大小:1,011KB
下载 相关 举报
基于Eclipse的高效C++开发平台教程.doc_第1页
第1页 / 共173页
基于Eclipse的高效C++开发平台教程.doc_第2页
第2页 / 共173页
基于Eclipse的高效C++开发平台教程.doc_第3页
第3页 / 共173页
基于Eclipse的高效C++开发平台教程.doc_第4页
第4页 / 共173页
基于Eclipse的高效C++开发平台教程.doc_第5页
第5页 / 共173页
点击查看更多>>
资源描述

1、挑战 30天 C/C+ 入门极限系列教程使用 Eclipse3.01 + MinGW3.1配置标准 C/C+开发环境详解http:/ 2005-04-15 10:38:25 来源: 网易学院第 1页 : 使 用 Eclipse3.01 + MinGW3.1配 置 标 准 C/C+开 发 环 境 详前言学习 c语言和 c+的人首先需要的是一个可提供练习的开发平台,对于 c+来说,可供使用的工具平台有很多,包括 Borland 的 c+ builder 和 Microsoft 的 Visual Studio 系列,的确他们都是非常不错的。 难道我们除了这些我们说熟悉的开发工具就没有的选择了? 对于

2、我们此文的主角,Eclipse 来说,很多人都知道它是为 JAVA开发而生的,但今天我们要说的是如何利用它与 MinGW配合,设置出高效的 c+开发平台。 软件准备.Eclipse 3.06官方站点: http:/www.eclipse.org Eclipse工具下载地址:http:/www.eclipse.org/downloads/index.php .C/C+ Development Toolkit下载地址:http:/update.eclipse.org/tools/cdt/releases/new/ 注意,在这里我们选择的是 cdt-2.1.0-win32.x86 .MinGW 3.

3、1下载地址:http:/ 系统环境 WIN2000/WINXP/WIN2003 环境配置我们把需要的工具都下载完毕后,首先安装 MinGW,安装完毕后我们先配置一下系统的环境变量。 点击我的电脑的属性-高级-环境变量-系统变量-path 在 path后增加:MinGW 安装路径MinGWbin;,如下图所示。接下来找到你安装 MinGW的目录,将 MinGWbinmingw32-make.exe这个文件,改名为make.exe。接下来,我们安装 Eclipse。 在安装完成后先不急运行 Eclipse,将下载的 C/C+ Development Toolkit解压后的features、plug

4、ins 目录放到 Eclipse的安装目录下。 至此平台配置基本完成,下面我们运行 Eclipse,第一次运行的时候系统会提示用户设置工作目录既 workspace,这也就是工程文件的安放位置,这里我们选择默认识,运行后的 Eclipse环境界面如下图。 使用 Eclipse3.01 + MinGW3.1配置标准 C/C+开发环境详解http:/ 2005-04-15 10:38:25 来源: 网易学院第 2页 : 使 用 Eclipse3.01 + MinGW3.1配 置 标 准 C/C+开 发 环 境 详下面我们来建一个工程 选择 FILE-NEW-Project. 在弹出的对话框中选择

5、Standard Make C+ Progject,如下图所示。之后选择 NEXT输入工程文件名,这里我们输入 test,完成工程设置。 使用 Eclipse3.01 + MinGW3.1配置标准 C/C+开发环境详解http:/ 2005-04-15 10:38:25 来源: 网易学院第 3页 : 使 用 Eclipse3.01 + MinGW3.1配 置 标 准 C/C+开 发 环 境接下来我们展开左边的 Navigator对话框的 test工程目录,在空白处点击 Mouse右键,选择 NEWFILE,如下图所示。 接下来,在弹出的对话框中输入要新添加的 c+文件名,这里我们输入 Hell

6、o.cpp。 使用 Eclipse3.01 + MinGW3.1配置标准 C/C+开发环境详解http:/ 2005-04-15 10:38:25 来源: 网易学院第 4页 : 使 用 Eclipse3.01 + MinGW3.1配 置 标 准 C/C+开 发 环 境 详接下来我们在编辑对话框中输入 c+源程序,代码如下: C+ 代码 #include using namespace std; int main() coutShow View-Make Targets 在右边出现的 Make Targets对话框中选择 test工程名,Mouse 右键盘选择 Add Make Targets,

7、在接下来弹出的对话框中输入 Target Name:MAKE FILE Builder Command:g+ Hello.cpp -g -o run,这里如果是 c环境就改成 gcc Hello.c -g -o run 完成后点击 Create。 如下图所示: 完成后,点击 Make Targets对话框中的 MAKE FILE分支就可以进行源文件的编译工作了,编译完成后在 Navigator对话框中会出现 RUN.EXE,这就是编译后的可执行文件,双击就可以运行它,如下图所示意。到此 Eclipse+MinGW的标准 c/c+环境就已经全部配置并测试完毕,读者如果还有问题可访问 dev-,在

8、讨论区提问,我会给予解答。到这里,管宁的 30天极限入门教程就全部连载完了。真心希望这篇教程能给初学者带来一定的帮助。如果您觉得这套系列教程好,请您向您的朋友推荐;接下来,网易学院会独家连载管宁原创的 JAVA系列教程,请关注。 C+的 iostream标准库介绍以及对左移与右移运算符的重载http:/ 2005-04-15 10:28:36 来源: 网易学院第 1页 : C+的 iostream标 准 库 介 绍 以 及 对 左 移 与 右 移 运我们从一开始就一直在利用 C+的输入输出在做着各种练习,输入输出是由 iostream库提供的,所以讨论此标准库是有必要的,它与 C语言的 std

9、io库不同,它从一开始就是用多重继承与虚拟继承实现的面向对象的层次结构,作为一个 c+的标准库组件提供给程序员使用。 iostream 为内置类型类型对象提供了输入输出支持,同时也支持文件的输入输出,类的设计者可以通过对 iostream库的扩展,来支持自定义类型的输入输出操作。 为什么说要扩展才能提供支持呢?我们来一个示例。 C+ 代码 #include #include using namespace std; class Test public: Test(int a=0,int b=0) Test:a=a; Test:b=b; int a; int b; ; int main() Te

10、st t(100,50); printf(“%?“,t);/不明确的输出格式 scanf(“%?“,t);/不明确的输入格式 coutt;/同样不够明确 system(“pause“); 由于自定义类的特殊性,在上面的代码中,无论你使用 c风格的输入输出,或者是c+的输入输出都不是不明确的一个表示,由于 c语言没有运算符重载机制,导致 stdio库的不可扩充性,让我们无法让 printf()和 scanf()支持对自定义类对象的扩充识别,而c+是可以通过运算符重载机制扩充 iostream库的,使系统能能够识别自定义类型,从而让输入输出明确的知道他们该干什么,格式是什么。 在上例中我们之所以用

11、 printf与 cout进行对比目的是为了告诉大家,C 与 C+处理输入输出的根本不同,我们从 c远的输入输出可以很明显看出是函数调用方式,而 c+的则是对象模式,cout 和 cin是 ostream类和 istream类的对象。 C+中的 iostream库主要包含下图所示的几个头文件:我们所熟悉的输入输出操作分别是由 istream(输入流)和 ostream(输出流)这两个类提供的,为了允许双向的输入输出,由 istream和 ostream派生出了 iostream类。 类的继承关系见下图:C+的 iostream标准库介绍以及对左移与右移运算符的重载http:/ 2005-04-

12、15 10:28:36 来源: 网易学院第 2页 : C+的 iostream标 准 库 介 绍 以 及 对 左 移 与 右 移 运iostream库定义了以下三个标准流对象:.cin,表示标准输入(standard input)的 istream类对象。cin 使我们可以从设备读如数据。 .cout,表示标准输出(standard output)的 ostream类对象。cout 使我们可以向设备输出或者写数据。 .cerr,表示标准错误(standard error)的 osttream类对象。cerr 是导出程序错误消息的地方,它只能允许向屏幕设备写数据。 输出主要由重载的左移操作符()

13、完成。a 表示将数据放入 a对象中。 这些标准的流对象都有默认的所对应的设备,见下表: 图中的意思表明 cin对象的默认输入设备是键盘,cout 对象的默认输出设备是显示器屏幕。那么原理上+有是如何利用 cincout 对象与左移和右移运算符重载来实现输入输出的呢? 下面我们以输出为例,说明其实现原理: cout 是 ostream类的对象,因为它所指向的是标准设备(显示器屏幕),所以它在iostream头文件中作为全局对象进行定义。 ostream cout(stdout);/其默认指向的 C中的标准设备名,作为其构造函数的参数使用。 在 iostream.h头文件中,ostream 类对应

14、每个基本数据类型都有其友元函数对左移操作符进行了友元函数的重载。 ostream ostream 。等等 一句输出语句:cout“dev-“;,事实上调用的就是 ostream这个运算符重载函数,由于返回的是流对象的引用,引用可以作为左值使用,所以当程序中有类似 cout“dev-“中国软件开发实验室“;这样的语句出现的时候,就能够构成连续输出。C+的 iostream标准库介绍以及对左移与右移运算符的重载http:/ 2005-04-15 10:28:36 来源: 网易学院第 3页 : C+的 iostream标 准 库 介 绍 以 及 对 左 移 与 右 移 运由于 iostream库不光

15、支持对象的输入输出,同时也支持文件流的输入输出,所以在详细讲解左移与右移运算符重载只前,我们有必要先对文件的输入输出以及输入输出的控制符有所了解。 和文件有关系的输入输出类主要在 fstream.h这个头文件中被定义,在这个头文件中主要被定义了三个类,由这三个类控制对文件的各种输入输出操作,他们分别是ifstream、ofstream、fstream,其中 fstream类是由 iostream类派生而来,他们之间的继承关系见下图所示。 由于文件设备并不像显示器屏幕与键盘那样是标准默认设备,所以它在 fstream.h头文件中是没有像 cout那样预先定义的全局对象,所以我们必须自己定义一个该类的对象,我们要以文件作为设备向文件输出信息(也就是向文件写数据),那么就应该使用 ofstream类。 ofstream 类的默认构造函数原形为: ofstream:ofstream(const char *filename,int mode = ios:out,int openprot = filebuf:openprot); filename: 要打开的文件名

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 实用文档资料库 > 策划方案

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。