我SortedMerge函數聲明爲下:調用函數的結果存儲在「此」
sortedMerge(ListOfParts *& l2, ListOfParts *& result);
在同一類的以下功能,我想用對象tmp1
調用這個SortedMerge()函數在調用mergeSort函數的對象中得到結果;即,this
。 基本上,main()中的對象l1調用mergeSort()並從那裏獲得2列出tmp1,tmp2,現在我想調用SortedMErge將結果存儲在l1中;
真的卡住了。我認爲使用「this」就足夠了,但我認爲它與不使用ant CONST的函數參數有一些衝突,並且「this」會使其變爲CONST。
那麼可能會有另一種解決方法呢?
Class ListOfParts{
struct CarPart{
int data;
CarPart *next;
}
CarPart *Head;
public:
sortedMerge(ListOfParts *& l2, ListOfParts *& result);
void mergeSort(){
ListOfParts *tmp1;
ListOfParts *tmp2;
if(this->Head == NULL || this->Head->Next == NULL){
return;
}
this->frontBackSplit(tmp1, tmp2);
tmp1->mergeSort();
tmp2->mergeSort();
tmp1->sortedMerge(tmp2, this)
}
}
提示:創建指針時,不會創建指針指向的對象。 – Benoit 2012-01-17 14:33:12