かなり自明です。「新しいベクター」行でSIGABRTを引き起こしているメソッドは次のとおりです。
vector<string> * Task::arguments() {
vector<string> *args = new vector<string>(); // CAUSES SIGABRT
int count = sizeof(_arguments);
for (int x = 0; x < count; x++) {
string argument(_arguments[x]);
args->push_back(argument);
}
return args;
}
他の場所では、問題なく正確な行を呼び出していることに注意してください。Task クラスのインクルードのリストは次のとおりです。
#include <vector>
#include <unistd.h>
#include <string>
using namespace std;
#include <sys/types.h>
#include <sys/wait.h>
#include <signal.h>
何かご意見は?