提到模块,它是一个概念很广的名词,在编程语言世界中,用它可代表一个独立的编程语言源代码或者其他形式的存在,可用于其他模块或者主程序使用。
- C++20引入模块是由于之前的大型工程C++头文件实在太多,编译起来耗时,修改简单的一个宏定义,造成大规模头文件的重编译,呜呼哀哉。
- 可通过import <string>导入字符串模块,export module student导出学生类。
- 模块和C/C++头文件/源代码形式类似,一个是接口文件,一个是实现文件。
- 模块的导入让C++更有效率,不愧是Modern编程语言。
- Java/C#/Python有好用的包、程序集或者引用库,C++的模块和它们的作用类似。
不同编程语言导入模块
- Python 可使用import xxx或from xxx import yyy导入模块或函数
- import xxx
- import xxx as X
- 使用xxx内部的类yyy,必须用xxx或X前缀,如xxx.yyy或 X.yyy
- from xxx import yyy
- from xxx import yyy as Y
- from xxx import *
- 使用yyy内部的类zzz,不用yyy或Y前缀