線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1056
推到 Plurk!
推到 Facebook!

thread 亂數值傳遞

答題得分者是:carstyc
chinablack
一般會員


發表:6
回覆:2
積分:1
註冊:2007-08-07

發送簡訊給我
#1 引用回覆 回覆 發表時間:2012-01-11 23:18:46 IP:123.193.xxx.xxx 訂閱
各位高手
小弟我知前在寫一個Thread,要從Thread產生亂數值丟掉mainform使用
一開始使用postmessage,但現在想改用類似class傳值的方法
但是不知道是不是我的方法錯誤,傳入的值都為零
謝謝各位可以幫我解答了

[code cpp]
Thread.cpp
void __fastcall myThread::Execute()
{
//---- Place thread code here ----
randomize();
//---- Place thread code here ---
while(!Terminated)
{
m_Rand = rand() 0 75;
Sleep (50);
}
}
Thread.h
class myThread : public TThread
{
private:
protected:
void __fastcall Execute();
public:
__fastcall myThread(bool CreateSuspended);
int m_Rand;
};
Main.cpp
void __fastcall TForm1::Button1Click(TObject *Sender)
{
int a ;
Thread = new myThread(true);
myThread *Value;
Value = new myThread(this);
a = Value->m_Rand;
}

[/code]

carstyc
資深會員


發表:16
回覆:254
積分:329
註冊:2003-07-18

發送簡訊給我
#2 引用回覆 回覆 發表時間:2012-01-12 00:42:09 IP:219.84.xxx.xxx 訂閱
實在不懂耶...

要取得一個亂數,有必要用一個Thread 不斷的去產生亂數嗎?意義何在?

而且你只有Create Thread 物件,並未執行 Execute()

所以m_Rand 恒為0應該是正常的啊...
系統時間:2017-12-17 6:21:37
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!