我正在尝试使用c++测试码头形象模块
docker pull benboeckel/cxx-modules-sandbox:latest
docker run -it image_id
sh-4.4$ g++ --version
g++ (GCC) 9.0.1 20190301 (experimental) [c++-modules:20190305-1618]然后,创建一个测试文件。
import std.io;
int main()
{
return 0;
}我得到了以下错误:
sh-4.4美元g++ -o m main.cpp -std=c++2a -fmodules ts在main.cpp:1:1导入的模块中: std.io: error:未能读取模块'std.io.gcm':没有这样的文件或目录std.io:致命错误:从疯狂的火车上跳到崩溃维尔编译结束。
更新:
下面的代码工作正常。
//m.cpp
export module M;
export int sq(int i) { return i*i; }
//main.cpp
import M;
int main() { return sq(9); }
g++ -o m main.cpp m.cpp -std=c++2a -fmodules-ts发布于 2019-03-09 16:49:41
模块被添加到C++20草案中,但这并不意味着标准库现在是模块化的。正在努力将其模块化,但到目前为止我们还没有任何具体的内容:
虽然我们似乎已经就模块语言特性的设计达成了共识,但我们关于如何以及何时将C++标准库模块化的计划还不够成熟。已经提出了一些建议([P0581R1]和[P1212R0]),并进行了初步讨论([2018-杰克逊维尔-LEWG-P 0581R0-分钟]和[2018-圣地亚哥-EWG-P1212R0-分钟]),但我们尚未承诺走上一条道路。考虑到C++20循环已经接近尾声,现在是我们决定C++20标准库模块策略的时候了。
https://stackoverflow.com/questions/55034696
复制相似问题