之前也沒注意到這問題,大家先搞清楚下面幾個關鍵詞吧:
class CMyTest
{
public:
CMyTest();
~CMyTest();
DWORD Start();
static DWORD WINAPI ThreadFun(LPVOID);
// ....
};
void main()
{
CMyTest test;
// .....
}
其中CMyTest是一個類,main函數中test是這個類的一個局部變量(對象)。
看完上面這個例子,再仔細推敲一下下面這段話:
類的靜态函數不屬于該類的任何一個對象,而是屬于類本身,是以不受對象局部變量的影響,在運作時可以直接調用類的靜态函數,進而啟動線程!
相反,如果一個類的一個局部對象的生命周期結束了,難道線程函數就不能用了嗎?