错误
确切的错误是问题的标题。
当我使用 vectorName.push_back()
函数时会发生这个错误。
我用以下简单的代码重新创建了它:
#include <iostream>
#include <vector>
using namespace std;
int main() {
vector <int> vec = {};
vec.push_back(2);
return 0;
}
编译器和设置信息
我不知道这是否相关,但在此之前我使用过tdm-gcc。
研究
几乎找不到解决方法,或者我没有足够努力地搜索。我找到了一些关于_ZSt28__throw_bad_array_new_lengthv
的帖子,但没有关于入口点的。因为我没有找到关于这个确切问题的任何信息,所以我没有尝试任何方法。
C:\msys64\mingw64\bin
移至PATH的顶部。如果这无法解决问题,请使用-static
进行构建,或将程序使用的DLL文件复制到.exe旁边(使用ntldd -R 123.exe
获取DLL列表,忽略那些不存在于C:\msys64\mingw64\bin
中的文件)。 - HolyBlackCatg++ -Wall test.cpp && ./a.exe
编译和运行代码,会发生什么情况?which g++
的输出是什么? - David Grayson