C++ 20 高级编程
第一章 C++和标准库速成
C++速成
小程序”Hello World”
主要是接触引入模块的概念,程序如下:
1 | // hello.cpp |
但是由于目前的gcc不支持引入模块,所以会报错,我们可以尝试一下,输入如下命令:
其中-fmodules-ts表示开启模块支持
1 | g++ hello.cpp -std=c++20 -fmodules-ts |
但是很遗憾,目前的gcc不支持,所以会报错:

引入模块确实是个不错的选择,后续C++可能就会有自己的包管理器了,C++是世界上最好的语言.py
这里我们替换为头文件即可
关于模块和头文件
在引入模块之前,C++对于封装通常是函数的声明放在.h文件中,函数的定义(实现)放在.cpp文件中,这样进行管理;但是有了模块之后,就不需要进行声明和定义的分离了(但是现在我的编译器不支持我还没办法看到实例…)
关于在C++中使用C标准库的头文件,注意:
不适用
.h后缀,而改为前缀c,例如< stdio.h >改为使用< cstdio >为什么呢?在
C++中所有的头文件的内容都是放在标准的命名空间std当中的,这样做是为了防止用户的命名和系统的命名发生冲突,同时也是对标准库的封装做了隔离和保护,使用c开头的头文件,这些内容都是在std中的,而.h就没有import引入模块可能并不支持C标准的头文件,所以还是先用#include吧
一些预处理命令
如下,主要就#include,#define,#ifdef,#ifndef,#endif,#pragma这几个

后续
TODO