2012-12-12 40 views
-2

我在將列表複製到另一個列表時遇到問題。複製QList到另一個QList

下面是我的代碼片段。

宣言

void setData(QList<datadetails> &Data); 
-------------------------------------------- 
void MyClass:: setData(QList<datadetails> &Data) 
{ 
    mywindow->m_dataDetails = Data; 
} 

下面是錯誤

'無效MyClass的::使用setData(INT &)':在 'ComponentInterface' 未找到重載成員函數

任何幫助將理解

+0

int不是容器,int 將不起作用,你的意思是QList ? – billz

+0

我甚至用QList嘗試過,但那也不行。可以讓我知道如果我們有QList作爲容器(我現在用QList編輯了代碼) – DNamto

回答

1

也許你的意思是:

void MyClass::setData(Qlist<datadetails>& Data) { 
    mywindow->m_dataDetails = Data; 
} 

從你的代碼的任何部分:

Qlist<datadetails> data; 
MyClass mc; 
mc.setData(data); 
+0

你的代碼不應該編譯:你嘗試調用一個函數,它將帶*指針*的*引用*帶到'QList '。您應該在函數調用中刪除'&',或將'Data'參數更改爲指針。 –

+0

你是對的,該死的複製和粘貼! :P –

1

好了,它可以幫助你正確地聲明自己的函數:

無效使用setData(QList作&數據);

..應該在類聲明中。你剛剛宣佈了一個全局函數。