2013-03-31 29 views
-1
class CAnalizeTime { 

private: 

    vector<CService> m_vData(string m_strSellers); 

    sort(m_vData.begin(), m_vData.end()); 


}; 

CService數據是我創造了另一個類,它包含字符串m_strSellers安排在向量問題

我要創建一個矢量,銷售者

安排它,我得到的錯誤是這個syntax error : identifier 'm_vData'

+2

您正在嘗試在類的定義中進行排序。類定義只是指定類將具有的功能和變量。您需要將這種排序放入其中一個函數中。 – maditya

回答

1

這條線:

vector<CService> m_vData(string m_strSellers); 

是聲明一個成員變量的錯誤嘗試。只是這樣做:

vector<CService> m_vData; 

此外,聲明:

sort(m_vData.begin(), m_vData.end()); 

不能粗暴地放在一個類定義就這樣。這是聲明,它必須是函數的一部分。例如:

class CAnalizeTime { 

    // ... 

    void sort_my_vector() 
    { 
     sort(m_vData.begin(), m_vData.end()); 
    } 

    vector<CService> m_vData; 
}; 

我不知道你的意思是在你原有的類定義做什麼,但你絕對應該從那裏刪除該聲明,並把它放在合適的。

0

調用sort的行需要出現在函數內(可能是您類的成員函數)。它不能直接出現在類聲明中。

+0

我相信OP實際上意味着'm_vData'成爲數據成員。但我明白這個混淆,因爲這個問題根本不明確。 –

+0

OMG,我又做了!我錯誤地編輯了別人的答案......對不起! – dasblinkenlight

+0

@dasblinkenlight:不用擔心:) – NPE

0

不能調用一個函數的類體

sort(m_vData.begin(), m_vData.end()); 

所以,你需要的代碼裏面轉移函數體內。