这个问题在这里已有答案:
我正在用c ++编写一个简单的小程序来测试向量。以下代码运行良好,并输出hello到cmd。我遵循的步骤是:g ++ filename.cpp来编译。\ a.exe来运行
#include <iostream>
#include <vector>
using namespace std;
int main()
{
cout<<"hello";
return 0;
}
但是,当我声明一个向量时,hello不会显示,程序似乎根本不起作用。
#include <iostream>
#include <vector>
using namespace std;
vector<int> a;
int main()
{
cout<<"hello";
return 0;
}
编译时我没有收到任何错误消息。但是当我在cmd外跑时,我确实得到了一条关于没有入口点的消息。
无法在动态链接库中找到过程入口点_ZNKSt9baisc_ioslcSt11char_traitslcEEcvbEv
我搜索谷歌和堆栈溢出但无法找到我的问题的解决方案。
对于稍后会阅读此内容的人,我在环境路径变量中安装了一个名为gtk的东西,并且它似乎与MinGW发生冲突。通过写作,一切顺利:
g ++ ex1.cpp -static-libgcc -static -static-libstdc ++
问题可能是由于Windows尝试执行程序时找不到包含程序试图访问的功能的DLL(此处为_ZNKSt9baisc_ioslcSt11char_traitslcEEcvbEv
)。
有一些解决方案:
执行上述任何操作都可以解决您的问题。