結構名次包含開始和結束 substringPos載體包含矢量之一名次 陣列矢量的名次包含substringPos 尺寸數組是通過排列號碼遞增儲備呼叫 數組的第一元素substringPos通過交換呼叫段錯誤,分配內存以指向矢量
struct Pos
{
int start;
int end;
};
typedef vector<Pos*> PosVector;
vector<struct Pos*>substringPos;
struct Pos*temp=new Pos;
temp->start=3;
temp->end=10;
substringPos.push_back(temp);
vector<PosVector*> array;
array.push_back(&substringPos);
array.reserve(permutations);
for(int v=1;v<permutations-1;v++)
{
array[v]->push_back(temp);//gives segmentation fault
array[v]->swap(*array[0]);//gives segmentation fault
}
這不可能是真正的代碼。它在聲明之前使用'substringPos'。 –
'數組'只包含一個元素;唯一有效的索引是'array [0]'。由於'i'和'permutations'從不顯示,所以很難確定,但是'i + v'大於'0'的可能性很大,並且您的程序通過訪問索引超出範圍來展示未定義的行爲。 –
這是* prime *用於運行調試器。 – WhozCraig