使用矢量时无法打印

时间:2019-05-16 23:47:43

标签: c++ g++ mingw-w64

我正在尝试在.cpp文件中使用std::vector<int>。但是它只打印任何内容,尽管它应该打印一些文本。代码很简单,但是我不知道为什么它不能正常工作。

我正在使用Mingw-w64。我尝试了g++g++ -std=c++11,但是它不起作用。如果我删除了<vector>和所有相关内容,则可以使用cout进行打印。所以应该是向量问题,对此有任何想法吗?

#include <iostream>
#include <vector>

using namespace std; 

int main()
{
    vector<int> g1(5,20); 

    for (int i = 1; i <= 5; i++) 
        g1.push_back(i); 

    cout << "Output of begin and end: "; 
    for (auto i = g1.begin(); i != g1.end(); ++i) 
        cout << *i << " "; 
}

编辑:

对于删除的矢量部分,代码如下所示。与向量g1相关的所有代码均已删除,并且可以正常工作。

#include <iostream>
#include <vector>

using namespace std; 

int main()
{

    cout << "Output of begin and end: "; 

}

感谢@Mirko的建议,添加-static编译选项适用于原始代码。

0 个答案:

没有答案