1
class ThreadPool
{
public:
....
private:
struct TP_Thread: public Thread_t
{
....
};
std::vector<std::tr1::shared_ptr<TP_Thread> > m_threads;
.....
};
我想要做的是這樣的:
typedef std::tr1::shared_ptr<TP_Thread> shpThread;
縮短類定義的文字。問題是我要麼獲取指向不完整類型的指針(因爲在類之前的前向聲明和typedef公共部分)或試圖訪問ThreadPool的私有成員(在我試圖在類之外鍵入定義的情況下)。我怎樣才能輸入這個,這樣我可以在實現過程中自由使用它?
爲什麼不簡單地把typedef放在私人部分? – user2079303
我希望它可以被類用戶訪問 – susdu
你可以用typedef基類Thread_t來代替嗎?你的'TP_Thread'是私有的,用戶無法訪問它。 –