在C++20中不能使用iostream作为模块(Visual Studio)
无法在最新版本的MSVC中运行此代码。此代码示例摘自艾弗・霍顿和彼得・范・韦尔特合著的《C++20入门,从新手到专业》一书。
import <iostream>;
int main()
{
int answer {42};
std::cout << "The answer to life, universe, and everything is "
<< answer
<< std::endl;
return 0;
}
我收到此错误:找不到‘C:Program Files(X86)Microsoft Visual Studio2019CommunityVCToolsMSVC14.28.29333includeiostream’‘的头单元
我使用的是Microsoft Visual Studio 16.8.1版,并且已在项目属性中启用了这些标志(根据此处类似的问题Standard way of importing modules):
- /实验:模块
- /std:C++最新
- /EHsc
- /MD
有人能帮我这个忙吗?我应该用嘎嘎还是GCC?
解决方案
作者在提供下载的示例和解决方案文件中指出,由于 编译器对C++20标准的实现文件可能还不能工作。 (详情请参见book's page和corresponding github repo)。
因此,它们不提供使用";#Include";指令的模块&示例。
HTH。
问候, Glenarvan
相关文章