2011-04-30 49 views
0

這涉及到一個問題,我以前問: C++ array in header fileC++從傳遞的.cpp變量頭文件

在main.cpp中文件

有一個叫做FIN1

ifstream fin1("ACW2_data.txt"); 

這可能是一個可變愚蠢的問題,但我怎麼可以在頭文件中使用main.cpp中的這個變量的值? (即是有辦法打發兩個文件之間的變量?)

有關使用頭文件的任何其他信息可以幫助提前

感謝

+2

「將變量傳遞給頭文件」沒有多大意義。一個頭文件實際上只是一堆源代碼,當它被#includedd複製粘貼到.cpp時。請給出一個你遇到麻煩的例子。 – 2011-04-30 15:03:21

回答

3

這個變量可以在頭文件中聲明一個extern

extern ifstream fin1; 

現在你可以使用這個變量,無論你#include這個頭文件包含頭文件本身。你不需要像這樣傳遞變量。 :)

+1

+1用於_可能檢測到OP的含義 – sehe 2011-04-30 15:06:46

2

我認爲你需要備份並解釋你正在嘗試做什麼。通常,頭文件用於定義通用定義和聲明。

你是什麼意思「使用頭文件中的值」?通常,頭文件不在代碼運行的位置。那麼需要在那裏使用這個變量呢?

一般而言,需要在多個文件中使用的變量應在標題中聲明以開始。在C++中,這通常以類成員的形式出現。

更常見的是當另一個函數或方法需要使用相同的值時,將變量作爲參數傳遞。

我無法從您提供的信息中分辨出來,但這聽起來像是您對我的錯誤軌道。