C++ 简介
约 570 个字 17 行代码 预计阅读时间 4 分钟
什么是C++
C++是一门高效、灵活的编程语言,由Bjarne Stroustrup于1980年代初设计开发。它在C语言的基础上添加了面向对象编程的支持,同时保持了C语言的高效性和灵活性。
-
C语言特点
- 程序运行高效
- 可直接访问硬件,适合操作系统和嵌入式系统开发
- 语言灵活性强
- 类型检查不够严格
- 对大型程序支持不足
- 仅支持面向过程编程
-
C++改进
- 数据抽象
- 访问控制
- 初始化与清理
- 引用
- 函数重载
- 流式输入输出
- 名称控制
- 运算符重载
- 更安全和强大的内存管理
- 模板
- 异常处理
编程范式支持
传统的C语言编程方式,注重步骤的实现
支持封装、继承、多态等特性
通过模板实现代码复用
重要概念
-
面向对象核心
- 封装(Encapsulation)
- 继承(Inheritance)
- 多态(Polymorphism)
- 覆盖(Overriding)
- 接口(Interface)
-
设计原则
- 内聚(Cohesion)
- 耦合(Coupling)
- 容器类(Collection Classes)
- 模板(Template)
- 责任驱动设计(Responsibility-driven Design)
C++输入输出
-
基本输出
#include <iostream> using namespace std; int main() { cout << "Hello, World! I am " << 18 << " Today!" << endl; return 0; }
iostream
: 包含输入输出功能cout
: 控制台输出对象<<
: 输出运算符endl
: 结束当前行并刷新缓冲区
-
基本输入
#include <iostream> using namespace std; int main() { int number; cout << "Enter a decimal number: "; cin >> number; cout << "The number you entered is " << number << endl; return 0; }
cin
: 控制台输入对象>>
: 输入运算符
发展历程
- 1978:Stroustrup在剑桥大学使用Simula进行仿真编程
- 1979:在AT&T实验室开发"C with Classes"
- 1980:实现了大部分C++特性,但还没有虚函数
- 1983:加入虚函数特性,命名为C++(由Rick Mascitti提出)
- 1985:发布Cfront和第一版《The C++ Programming Language》
- 1990:成立ANSI C++委员会
- 1998:ISO/IEC 14882标准发布
C++与C的关系
虽然C++兼容大部分C语言特性(C++ => C=C+1),但它是一个独立的混合语言,提供了更多的编程特性和更强大的抽象能力。建议将C++视为一个独立的语言来学习,而不是C语言的简单扩展。
C++参考书籍
- C++ Prime
- Thinking In C++, Ver. 2, Vol. 1 & 2
- The C++ Programming Language
- C++: The Core Language
- Essential C++
- Effective C++
- Inside the C++ Object Model
- C++ Templates