C++ Lecture 1:基础语法入门

这是一篇早期 C++ 入门课堂笔记,内容比较碎片化。更完整、系统、适合作为主线学习的版本请阅读:C++ 程序设计入门到实用:语法、函数、数组、算法、类与指针

为什么要学 C++

C++ 比 Python 更接近底层,语法也更严格。它需要你明确变量类型、函数返回值、头文件和编译过程。

对于算法岗来说,C++ 很重要,因为很多笔试、竞赛和高性能系统都会用 C++。对于未来想做 AI Infra 或推理优化的人来说,C++ 也是绕不开的基础。

第一个 C++ 程序

1
2
3
4
5
6
7
#include <iostream>
using namespace std;

int main() {
cout << "Hello, C++!" << endl;
return 0;
}

逐行解释:

  • #include <iostream>:引入输入输出库。
  • using namespace std;:使用标准命名空间。
  • int main():程序入口。
  • cout:输出内容。
  • endl:换行。
  • return 0;:程序正常结束。

C++ 和 Python 的区别

Python 可以这样写:

1
2
x = 10
print(x)

C++ 通常要写清楚类型:

1
2
int x = 10;
cout << x << endl;

几个重要差异:

  • C++ 每条语句通常以分号 ; 结尾。
  • C++ 变量需要声明类型。
  • C++ 代码需要编译后运行。
  • C++ 的数组、指针、引用和内存管理更重要。

常见变量类型

1
2
3
4
5
6
int a = 10;
long long b = 10000000000LL;
double x = 3.14;
char c = 'A';
bool ok = true;
string name = "Richard";

算法题中常用:

  • int:普通整数。
  • long long:大整数。
  • double:浮点数。
  • string:字符串。
  • bool:布尔值。

条件判断

1
2
3
4
5
6
7
8
9
int score = 85;

if (score >= 90) {
cout << "A" << endl;
} else if (score >= 80) {
cout << "B" << endl;
} else {
cout << "C" << endl;
}

循环

for 循环:

1
2
3
for (int i = 0; i < 5; i++) {
cout << i << endl;
}

while 循环:

1
2
3
4
5
int n = 5;
while (n > 0) {
cout << n << endl;
n--;
}

函数

1
2
3
4
5
6
7
8
int add(int a, int b) {
return a + b;
}

int main() {
cout << add(3, 4) << endl;
return 0;
}

C++ 函数需要写清楚:

  • 返回类型。
  • 函数名。
  • 参数类型。
  • 函数体。

vector

vector 是 C++ 里最常用的动态数组:

1
2
3
4
5
6
7
8
#include <vector>

vector<int> nums = {1, 2, 3};
nums.push_back(4);

for (int x : nums) {
cout << x << endl;
}

常用操作:

1
2
3
4
nums.size();
nums.push_back(x);
nums.pop_back();
nums[i];

小结

第一阶段学习 C++,不要急着深入模板和复杂语法。先把这些内容用熟:

  • 输入输出。
  • 变量类型。
  • 条件和循环。
  • 函数。
  • vector
  • string

等这些能顺手写出来,再进入指针、引用、STL 和算法题。

作者

RichardF

发布于

2024-01-17

更新于

2026-06-24

许可协议