gpt4 book ai didi

c++ - 为什么 Visual Studio Community 2022 编译我的 C++ 代码?

转载 作者:行者123 更新时间:2023-12-02 18:09:29 25 4
gpt4 key购买 nike

在我的程序中,我有以下代码,并且不知何故它可以编译,但它不应该编译。

#include <list>
#include <iostream>

int main(int argc, char* argv[])
{
std::list<int> collection = { 1, 2, 3, 4, 5, 6 };

for each (auto i in collection)
{
std::cout << i;
}

return 0;
}

我从自动完成中得到了这段代码:

对于每个(集合中的自动项目)

我在 Developer Powershell 中使用以下命令来编译我的代码:

cl/EHsc/std:c++17 .\programm.cpp

请帮助我。我不知道为什么会发生这种情况,当我尝试在互联网上搜索它时,我发现的只是无法编译的问题。

最佳答案

for every 循环是 Microsoft 特定于 C++ 语言的扩展:

for each, in

Iterates through an array or collection. This non-standard keyword is available in both C++/CLI and native C++ projects. However, its use isn't recommended. Consider using a standard Range-based for Statement (C++) instead.

...

Syntax

for each ( type identifier in expression ) {
statements
}

这就是代码在 Visual Studio 中编译的原因。它不会在任何其他 C++ 编译器中编译。

关于c++ - 为什么 Visual Studio Community 2022 编译我的 C++ 代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72649591/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com