-
C++教程之C++ 基础教程Beta 版
C++ 基础教程Beta 版
原作:Juan Soulié 翻译:Jing Xu (aqua)
英文原版
本教程根据Juan Soulie的英文版C++教程翻译并改编。 本版为最新校对版,尚未定稿。如有不明或错误之处,请参考英文原版,并敬请在本站留言指正。版权归作者所有,欢迎链接,请勿转载。
本教程对C++语言进行了深入浅出的介绍,从基础知识到ANSI-C++标准的最新功能,内容涵盖了从数组,类等基本概念到多态、模板等高级概念。教程本着实用的原则,每一小节都结合了可以工作的程序实例,以便读者从第一课开始就可以上手实习。
本翻译版本对许多C++概念中的关键词保留了中英文对照,以便读者增强理解,并方便日后阅读英文原版教材
目录
1. 简介
怎样使用本教程
2. C++基础
Basics of C++
1. C++程序结构
Structure of a program
2. 变量和数据类型
Variables and Data types
3. 常量
Constants
4. 操作符/运算符
Operators
5. 控制台交互
Communication through console
3. 控制结构和函数
Control structures and Functions
1. 控制结构
Control Structures
2. 函数I
Functions I
3. 函数II
Functions II
4. 高级数据类型
Advanced Data
1. 数组
Arrays
2. 字符序列
Character Sequences
3. 指针
Pointers
4. 动态内存分配
Dynamic memory
5. 数据结构
Data Structures
6. 自定义数据类型
User defined data types
5. 面向对象编程
Object-oriented Programming
1. 类,构造函数和析构函数,类的指针
Classes. Constructors and Destructors. Pointers to classes.
2. 操作符重载,this,静态成员
Overloading Operators. this. Static members
3. 类之间的关系
Relationships between classes: friend. Inheritance
4. 虚拟成员,抽象,多态
Virtual Members. Abstraction. Polymorphism
6. C++高级
Advanced concepts
1. 模板
Templates
2. 名空间
Namespaces
3. 出错处理
Exception handling
4. 类型转换高级
Advacned Class Type-casting
5. 预处理指令
Preprocessor Directives
7. C++ 标准函数库
C++ Standard Library
1. 文件的输入输出
Input/Output with files
C++基础教程简介
怎样使用本教程
读者范围
本教程面向所有希望学习C++语言的读者。如果读者有其他编程语言背景或计算机相关基本知识可以帮助更好的理解教程内容,但这并非必须条件。
对于C语言熟悉的读者可将前三章(1.1 到 3.4)当作复习,因为这部分内容主要介绍C++中的C部分。不过某些C++的语法与C还是有些差别,所以建议还是快速的读一下这部分。
第四章讲述面向对象编程。
第五章主要介绍ANSI-C++标准中的新增的功能。
本教程结构
教程共分6章,每章分若干小节。你可以直接从主目录进入任意小节,并循每页底部的链接向后浏览。
很多小节含有一页例题介绍该章节主要知识点的使用。建议在进入下一章学习之前最好先阅读这些例题,理解每行代码。
学习和练习一种编程语言的最好办法是自己修改书中例题程序,设法在程序中增加新的功能。不要不敢修改这些例题程序,这正是学习的方法。
兼容性备注
ANSI-C++标准近几年来被接受为国际标准。尽管C++语言从二十世纪80年代即存在,ANSI-C++在1997年才被发表,2003年又被修订过。因此很多编译器不支持ANSI-C++中的部分新功能,特别是那些在此标准发表前即被发布的编译器。
在本教程中,那些ANSI-C++中新增的而老一代C++编译器大多不支持概念将备用如下标志标出:
ANSI C++新增的概念
同样对于C和C++在实现上有明显不同的概念,将备用如下标志标出:
C 与 C++不同的地方
编译器
本教程中所有例题程序均为console程序(控制台程序)。此类程序以文本形式与用户交换信息,显示结果。
所有C++编译器均支持console程序的编译。要了解更多关于如何编译的说明,请查询你的编译器用户使用手册。
C++编译器和开发环境推荐
很多读者询问编译器和开发环境的问题。除了常用的商用收费的MS Visual Studio, VC++,Borland C++等工具外,还有很多免费的工具也是很好用的。这里推荐两种免费的C++开发软件:
1、Eclipse的CDT开发工具,官方网站在http://www.eclipse.org/cdt/
2、开源工具Dev-C++和wxDev-C++
原作:Juan Soulié 翻译:Jing Xu (aqua)
英文原版
本教程根据Juan Soulie的英文版C++教程翻译并改编。 本版为最新校对版,尚未定稿。如有不明或错误之处,请参考英文原版,并敬请在本站留言指正。版权归作者所有,欢迎链接,请勿转载。
本教程对C++语言进行了深入浅出的介绍,从基础知识到ANSI-C++标准的最新功能,内容涵盖了从数组,类等基本概念到多态、模板等高级概念。教程本着实用的原则,每一小节都结合了可以工作的程序实例,以便读者从第一课开始就可以上手实习。
本翻译版本对许多C++概念中的关键词保留了中英文对照,以便读者增强理解,并方便日后阅读英文原版教材
目录
1. 简介
怎样使用本教程
2. C++基础
Basics of C++
1. C++程序结构
Structure of a program
2. 变量和数据类型
Variables and Data types
3. 常量
Constants
4. 操作符/运算符
Operators
5. 控制台交互
Communication through console
3. 控制结构和函数
Control structures and Functions
1. 控制结构
Control Structures
2. 函数I
Functions I
3. 函数II
Functions II
4. 高级数据类型
Advanced Data
1. 数组
Arrays
2. 字符序列
Character Sequences
3. 指针
Pointers
4. 动态内存分配
Dynamic memory
5. 数据结构
Data Structures
6. 自定义数据类型
User defined data types
5. 面向对象编程
Object-oriented Programming
1. 类,构造函数和析构函数,类的指针
Classes. Constructors and Destructors. Pointers to classes.
2. 操作符重载,this,静态成员
Overloading Operators. this. Static members
3. 类之间的关系
Relationships between classes: friend. Inheritance
4. 虚拟成员,抽象,多态
Virtual Members. Abstraction. Polymorphism
6. C++高级
Advanced concepts
1. 模板
Templates
2. 名空间
Namespaces
3. 出错处理
Exception handling
4. 类型转换高级
Advacned Class Type-casting
5. 预处理指令
Preprocessor Directives
7. C++ 标准函数库
C++ Standard Library
1. 文件的输入输出
Input/Output with files
C++基础教程简介
怎样使用本教程
读者范围
本教程面向所有希望学习C++语言的读者。如果读者有其他编程语言背景或计算机相关基本知识可以帮助更好的理解教程内容,但这并非必须条件。
对于C语言熟悉的读者可将前三章(1.1 到 3.4)当作复习,因为这部分内容主要介绍C++中的C部分。不过某些C++的语法与C还是有些差别,所以建议还是快速的读一下这部分。
第四章讲述面向对象编程。
第五章主要介绍ANSI-C++标准中的新增的功能。
本教程结构
教程共分6章,每章分若干小节。你可以直接从主目录进入任意小节,并循每页底部的链接向后浏览。
很多小节含有一页例题介绍该章节主要知识点的使用。建议在进入下一章学习之前最好先阅读这些例题,理解每行代码。
学习和练习一种编程语言的最好办法是自己修改书中例题程序,设法在程序中增加新的功能。不要不敢修改这些例题程序,这正是学习的方法。
兼容性备注
ANSI-C++标准近几年来被接受为国际标准。尽管C++语言从二十世纪80年代即存在,ANSI-C++在1997年才被发表,2003年又被修订过。因此很多编译器不支持ANSI-C++中的部分新功能,特别是那些在此标准发表前即被发布的编译器。
在本教程中,那些ANSI-C++中新增的而老一代C++编译器大多不支持概念将备用如下标志标出:
ANSI C++新增的概念
同样对于C和C++在实现上有明显不同的概念,将备用如下标志标出:
C 与 C++不同的地方
编译器
本教程中所有例题程序均为console程序(控制台程序)。此类程序以文本形式与用户交换信息,显示结果。
所有C++编译器均支持console程序的编译。要了解更多关于如何编译的说明,请查询你的编译器用户使用手册。
C++编译器和开发环境推荐
很多读者询问编译器和开发环境的问题。除了常用的商用收费的MS Visual Studio, VC++,Borland C++等工具外,还有很多免费的工具也是很好用的。这里推荐两种免费的C++开发软件:
1、Eclipse的CDT开发工具,官方网站在http://www.eclipse.org/cdt/
2、开源工具Dev-C++和wxDev-C++
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
SQL Server -- 解决存储过程传入参数作为s
JavaScript判断两个数组相等的四类方法
js如何操作video标签
React实战--利用甘特图和看板,强化Paas平
【记录】正则替换的偏方
前端下载 Blob 类型整理
抽象语法树AST必知必会
关于JS定时器的整理
JS中使用Promise.all控制所有的异步请求都完
js中字符串的方法
import-local执行流程与node模块路径解析流程