物件的初始問題 |
答題得分者是:ENIX007
|
dhliu
一般會員 發表:18 回覆:24 積分:8 註冊:2003-03-05 發送簡訊給我 |
請問各位
我在 http://angelibrary.tripod.com/computer/c/9/chap09.htm 這個網頁看到的程式, 將其內容 copy 到 BCB 的 Form1 裡面, 但是在 compile 的時候, 在 Form->create 裡建立的物件 CLine *m_pObj 的生命在 create 副程式結束後即消失了, 而 Form->close 裡設定 delete m_pObj 則會有 [Undefined symbol 'm_pObj'] 的錯誤訊息, 請問各位, 要在哪裡初始化 CLine 才能讓這個物建在何處都可以存取呢?
|
ENIX007
高階會員 發表:28 回覆:274 積分:185 註冊:2003-11-27 發送簡訊給我 |
|
dhliu
一般會員 發表:18 回覆:24 積分:8 註冊:2003-03-05 發送簡訊給我 |
|
ENIX007
高階會員 發表:28 回覆:274 積分:185 註冊:2003-11-27 發送簡訊給我 |
dhliu您好
假設您的class CLine定義在xxx.h檔中,在Unit1.h中
#ifndef Unit1H
#define Unit1H
下方加入
#include "xxx.h"
class TForm1 : public TForm { __published: // IDE-managed Components void __fastcall FormCreate(TObject *Sender); void __fastcall FormClose(TObject *Sender, TCloseAction &Action); private: // User declarations CLine *m_pObj; //或public區都可 public: // User declarations __fastcall TForm1(TComponent* Owner); };Unit1.cpp void __fastcall TForm1::FormCreate(TObject *Sender) { m_pObj = new CLine; } void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action) { delete m_pObj; }這樣應該是沒問題的,請試試看 程式迷人之處,在於邏輯思考,然而卻也是惱人之處~~
------
程式迷人之處,在於邏輯思考,然而卻也是惱人之處~~ |
dhliu
一般會員 發表:18 回覆:24 積分:8 註冊:2003-03-05 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |