-2

次のコードを書きます

#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);

}

そして私の例外として、プログラムがシャットダウンし、割り当ての期待値が低くなり、その理由がわかりません。どの要素にもアクセスしていません。

修正方法を教えてください。

事前にt​​hx。

4

2 に答える 2

7

あなたの問題は、関数に戻り値の型があるが、何も返さないことです。これにより、未定義の動作が発生します。§6.6.3 を参照:

関数の最後から流れることは、return値のない a と同じです。これにより、値を返す関数で未定義の動作が発生します。

于 2013-05-03T12:38:39.797 に答える
2

実際には何も返さないため、コメントで述べたように、未定義の動作が発生しました。ほとんどの場合、スタックをクリーンアップしようとするとクラッシュします。

于 2013-05-03T12:39:54.083 に答える