【问题标题】:Purpose of "import std;" in C++“导入标准;”的目的在 C++ 中
【发布时间】:2017-07-19 17:02:14
【问题描述】:

我在cppdepend 网站上看到了以下一小段代码。

import std; // Module import directive.
int main() 
{
    std::cout<<"Hello World\n";
}

那么,import std; 在 C++ 中的用途是什么?如何在 C++ 中使用import std; 而不是using namespace std;

我尝试在G++编译器中编译程序,但出现错误。

【问题讨论】:

  • import std的目的是什么; C++?如何使用导入标准;而不是 using namespace std; 它们是完全不同的概念。 import 是关于 c++ 模块的。
  • “这是 C++0x 草案中的一个例子”——这个特性一开始就没有出现在 C++11 中。关于它应该做什么:您链接到的页面解释得很好
  • 不是完全重复,但肯定是相关的:stackoverflow.com/questions/33307657/…

标签: c++ c++-modules


【解决方案1】:

那么,import std 的目的是什么? C++?

其目的是使std 模块中的名称可用。模块是一种语言特性,已被提议包含在未来的 C++ 标准中。

如何在 C++ 中使用import std; 而不是使用namespace std;

它们不是排他的,所以你不能用一个代替另一个。命名空间是独立于模块的语言特性。你可以同时使用,或者两者都不使用。

我尝试在 G++ 编译器中编译程序,但出现错误。

考虑到假设的未来标准版本尚未发布,甚至还没有决定模块肯定会成为未来标准的一部分,编译器没有实现它们也就不足为奇了。

您可以在这里找到 GCC 中的模块状态:https://gcc.gnu.org/wiki/cxx-modules 在撰写本文时,开发分支的工作已经开始并正在进行中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-18
    • 2016-08-22
    • 1970-01-01
    • 1970-01-01
    • 2018-02-03
    • 2012-04-25
    相关资源
    最近更新 更多