矢量坏投掷alloc expetion甚至不访问任何元素

Jas*_*son -2 c++

我写下面的代码

#include <vector>
#include <cmath>
#include <cfloat>
#include <iostream>
#include <algorithm>
using namespace std;



vector< vector<double> > merge_sort(vector< vector<double> >& source, vector< vector<double> >& result){





}

int main(){

       vector < vector<double> >test;
       vector < vector<double> >temp;

    merge_sort(test, temp);

}
Run Code Online (Sandbox Code Playgroud)

而我的例外,该程序关闭,我只是得到错误的分配预算,我不知道为什么,我甚至没有访问任何元素.

请告诉我如何解决它.

Thx提前.

Jos*_*eld 7

你的问题是你的函数有一个返回类型,但你没有返回任何东西.这为您提供了未定义的行为.见§6.6.3:

流出函数的末尾相当于return没有值; 这会导致值返回函数中的未定义行为.

  • @tacp导致未定义的行为.它可以编译,如果它想.它可以做任何它喜欢的事情.:) (3认同)