跟着做的C++20教程-实例32-module
目录
- 实例概要
- 实例代码
- 实例解释
- Visual Studio的设置
实例概要
介绍C++20模块概念
实例代码
MyModule.ixx
module;
#include "iostream"
export module MyModule;export void MyFunc()
{std::cout << "This is my function" << std::endl;
}
mian.cpp
import MyModule;int main(int argc, char** argv)
{MyFunc();
}
实例解释
- .ixx
C++20之前C++源代码文件只有两种一种是头文件通常命名为XXX.h;另一种是代码文件通常定义为XXX.cpp。而C++20之后多了另一种文件XXX.ixx(只针对Windows平台的cl编译器)。
.ixx文件为module文件其中定义了模块内容。 - module定义
module定义使用两个关键字export和module。如实例中export module MyModule;。 - module中导出函数
module导出函数的方法是在函数前面加关键字export。如实例中export void MyFunc()。 - 在module中引入头文件
在module中引入头文件需要使用“Global Module Fragment”。方法就是在ixx文件头加上关键字module;。如实例中
module;
#include "iostream"
//...其他头文件
export module MyModule;
- 导入模块
导入模块使用关键在import后面加模块名。之后就可以正常使用模块内导出的函数了。如实例中import MyModule;
Visual Studio的设置
由于module是C++20的新特性,因此需要设置Visual Studio使用的C++版本

本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
