模块接口声明,MyModule.cppm:
export module MyModule;
export namespace MyNamespace {
void printHello();
}
模块实现,MyModuleImpl.cpp:
module;
#include <iostream>
module MyModule;
namespace MyNamespace {
void printHello() {
std::cout << "hello,world!" << std::endl;
}
}
模块调用,main.cpp:
import MyModule;
int main() {
MyNamespace::printHello();
return 0;
}
编译与运行:
g++ -fmodules-ts -std=c++20 -x c++ -c MyModule.cppm
g++ -fmodules-ts -std=c++20 -c MyModuleImpl.cpp
g++ -fmodules-ts -std=c++20 -c main.cpp
g++ ./MyModule.o ./MyModuleImpl.o ./main.o
./a.out

1万+

被折叠的 条评论
为什么被折叠?



