我有一個檢查點列表,然後運行一個函數。我最初在這個函數中創建了這個列表,但現在我必須在外部構建它。問題是我不能在執行該函數的類中包含checkpoint.h
,因爲checkpoint.h
返回該類的類型的結構。最初的名單在全球範圍內被宣佈爲class.c
。如何將外部創建的列表轉移到課堂中,以便我可以使用它?將列表傳遞給類
所以我有這個頭,turing_machine.h
:
#ifndef __TURING_MACHINE__
#define __TURING_MACHINE__
#include "tape.h"
#include "alphabet.h"
#include "symbol_table.h"
...
#endif
和checkpoint.h
頭定義checkpoint_list
類:
#ifndef __CHECKPOINT_H__
#define __CHECKPOINT_H__
#include "turing_machine.h"
...
#endif
所以我要發送到的功能從turing_machine.h
結構checkpoint
列表但我無法修改任何東西,因爲這就是班級必須留下的方式。
我也有turing_machine.c
:
#include "turing_machine.h"
#include "checkpoint.h"
#include "symbol_table.h"
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
checkpoint_list *c;
因此,在我創建了turing_machine該列表中,c
,但現在我必須在外面創建它,我必須初始化列表c
,但我不知道開始怎麼樣。我希望這更清楚。
我使用了術語類錯誤;我只有.c
和.h
文件。
目前沒有意義。當你說「checkpoint.h返回結構」時,你是什麼意思?你應該發佈一些代表性的代碼,而不是試圖描述你的代碼。 – 2012-01-13 22:45:17
另外,如果他們能夠充分回答您的問題,您應該接受以前問題的一些答案。 – 2012-01-13 22:48:50
在C中實現類一直很辛苦......幸運的是,那裏有一個叫做C++的新東西...你有嘗試嗎?看起來很有前途! – 2012-01-13 23:00:37