Hello World 与编译
第一个 C++ 程序、g++ 编译、main 函数、命名空间 std
Hello World 与编译
C++ 版 Hello World 多了几行——#include <iostream>、std::cout、命名空间。不复杂,但每个都有含义。
学完本章你将: 理解 iostream、std::cout/endl、using namespace、编译命令。
第一个 C++ 程序
cpp
#include <iostream> // C++ 标准输入输出头文件
int main() {
std::cout << "Hello, World!" << std::endl;
return 0;
}
编译运行:
bash
g++ -std=c++17 hello.cpp -o hello && ./hello
逐行解析
`std::cout <<` —— 输出流
<< 是输出运算符,可以链式调用:
cpp
std::cout << "年龄:" << 25 << " 岁" << std::endl;
// 输出:年龄:25 岁
`std::endl` vs `'\n'`
cpp
std::cout << "A" << std::endl; // 换行 + 刷新缓冲区
std::cout << "B" << '\n'; // 只换行,不刷新(更快)
`using namespace std;`
cpp
#include <iostream>
using namespace std; // 之后可以直接写 cout
int main() {
cout << "Hello!" << endl; // 省略 std::
return 0;
}
⚠️ 在头文件中绝不使用
using namespace std;—— 它会污染所有包含该头文件的命名空间。在 .cpp 文件中也谨慎使用。
g++ 常用编译选项
bash
g++ -std=c++17 -Wall -Wextra -O2 hello.cpp -o hello
# 标准版本 所有警告 额外警告 优化级别