目录

C++ 介绍

第 0 章笔记


什么是C++

关注性能

与底层硬件紧密结合
对象生命周期的精确控制

C++ 中的异常处理 只有 try-catch, C# 中有 try-catch-finally. 因为垃圾回收必须要使用 finally。

Zero-overhead Abstraction
引入大量特性,便于工程实践
C++ 标准的工业界实现
不能脱离具体的语境讨论 C++
编写程序时要注重

C++ 的开发环境与相关工具

工具

/usr/bin/time

C++ 的编译 / 链接模型

通常情况下,处理程序的方式有两种:

  1. 简单加工
  2. 编译+链接
简单加工模型

将所有的内容都堆在一块,直接进行编译:

分块处理



每个文件单独编译,再进行链接

C++ 的编译 / 链接模型

C++ 基于分块处理的概念来定义自己的编译链接模型。由此概念引申出了几个重要的概念:

定义与声明
编译链接模型

g++  -E ./main.cpp o ./main.i

g++ main.i -S - o main.s

g++  main.s - c- o main.o