Re: [問題] 不同物件的Link-List
※ 引述《liu2007 (薯)》之銘言:
: ※ 引述《godman362 (青)》之銘言:
: 我提供我的寫法
: 你參考看看
: 話說void的也是型態的一種嗎~"~??
: : struct Light
: : {
: : int Power;
: : void *LocalLink;
: : };
: : struct TuneLight
: : {
: : int Power
: : void *LocalLink
: : };
: 由於你的兩種結構的架構(也就是前面推文所講的存放方式)
: 是一模一樣的
: 所以顯示結果才會一樣
: 但如果兩者的struct結構不一樣就囧了
: 所以既然一樣不如宣告在一起
: struct Light
: {
: int Power;
: struct Light *next;
: };
在這邊為止,的確結構是相同的,所以可以這樣用
這是我例子沒注意到,讓他剛好一樣,才產生了誤會
我實際上的結構內容,是完全不可能一樣,請讓我重新舉個例子
struct Light
{
int Power;
void *LocalLink;
};
struct TuneLight
{
int Power;
int Brightness;
void *LocalLink;
};
struct Window
{
int OpenLevel;
void *LocalLink
};
目前這三種struct會由void *所串在一起
int main()
{
struct Light A;
struct TuneLight B;
struct Window C;
A.LocalLink = &B; //A link to B
B.LocalLink = &C; //B link to C
}
這是重新舉過的例子
也就是說,不可能再出現像昨天湊巧跑出相同結果的答案
不過這樣我又產生了一個問題
因為實際上我是根據讀檔案而動態產生不同物件後串連
也就是我不知道串連的先後順序,我只知道開頭的位址而已
那麼,我的確可以一路往下指下去沒有問題
但是假設我要從結構中取值的話,就有問題了
因為如同之前所說,我必須要「轉型」
可是我不知道目前指的是哪一個,所以也不知道該轉成什麼型態
所以想再請問各位,這應該如何解決?
或是各位有比我更好想法的話,還請指點一下,謝謝
--
ˍˍ
活出自己 ▕吞佛▏
才是此生的快意 ▕童子▏
 ̄ ̄
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.118.5.214
推
09/26 09:41, , 1F
09/26 09:41, 1F
→
09/26 09:41, , 2F
09/26 09:41, 2F
→
09/26 09:42, , 3F
09/26 09:42, 3F
推
09/26 13:03, , 4F
09/26 13:03, 4F
討論串 (同標題文章)
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章