c中如何包含cpp檔案,C 如何在一個cpp檔案中引用另外一個cpp檔案中的類物件

時間 2021-12-19 17:17:43

1樓:tn瓶邪

.h是 標頭檔案

.cpp 是原始檔

c++中。通常 將struct class #define typedef function 等的定義放到標頭檔案中,

而將 成員宣告 和 function實現 類實現 放入cpp中。

h和cpp中同時可以使用include包含標頭檔案,但是通常有個習慣,就是儘量不要在.h檔案中include非必須的其他.h檔案。

也就是說,當.h中的內容(各種宣告)用到了t* t那麼我們 沒有必要 #include "t.h",只需要在。h中 class t;宣告一下即可。

當 .h中用到了t t;也就是 非指標時,此時可以在.h中 include "t.h"。

至於其他的方法函式內需要用到的標頭檔案,當然都是在cpp檔案中宣告瞭。

2樓:匿名使用者

把 file1.cpp裡的函式原型寫在 file2.cpp上面就可以。 不要include

或者你把file1.cpp從工程中去掉也可以

3樓:

建立一個file1.h 把cpp裡的檔案全部在裡面宣告 如下

double add(double a, double b) ;

然後在fille2裡將 file1.h 包含進去 如下#include"file1.h"

4樓:匿名使用者

可以加一個file1.h

裡面加這內容:

double add(double a, double b);

就以上一句就可以。

然後在file2.cpp中,這樣寫:

#include

#include "file1.h"

void main()

/////////////

這樣,file2.cpp就可以使用file1.cpp中定義的函式了

c++ 如何在一個cpp檔案中引用另外一個cpp檔案中的類物件

5樓:匿名使用者

extern classname objectname;

6樓:嘻嘻小

?網友答案:類的成員函式**必須放在一個cpp檔案中如果在h標頭檔案中放了成員函式的執行**,那就等同於在所有包含它的cpp檔案中都寫了一遍,因此報錯 //檔案music.

h#ifndef music_h#define music_h 注:使用條件編譯讓其不多次載入 class music {}; #endif //檔案1.cpp#include "music.

h" using namespace std; int main(int argc, char* argv) //檔案2.cpp#include "music.h" extern class music m;完全沒有問題啊!

提問者回答:問題解決了。

c++中一個.cpp呼叫另一個.cpp檔案的方法

7樓:用著追她

1、編譯命令: g++ -o dome.so -shared -fpic dome.cpp,如果成功則會在當前目錄下生成一個dome.so的檔案。

2、splitpath_s在此作用域中尚未宣告這個函式需要的標頭檔案是:,這個函式是 用來獲取程式的路徑,並對路徑進行分解的。

3、在windows上編譯時沒有任何問題,但是到了centos上就出現了_splitpath_s在此作用域中尚未宣告的錯誤提示,找了很久才發現原來 linux 下是沒有_splitpath_s函式的,所以無法識別該函式。

4、『fopen_s』在此作用域中尚未宣告,這裡之所以用fopen_s是因為在windows除錯的時候提示不安全。

5、『strlen』在此作用域中尚未宣告,前面我宣告瞭一個char[10]常量,然後通過strlen來獲取該字串的長度。

6、在windows中使用strlen只要呼叫了標頭檔案#include 和空間名using namespace std;即可使用,但是在linux中需要新增標頭檔案#include 才行。

8樓:匿名使用者

既然編譯的時候 會報重

證明兩個cpp檔案已經編到一個工程裡面了

這時 只要再a中沒有定義static 型別 那麼在b中直接宣告extern int ggg();

extern int a;

就可以在其後使用ggg和a了

9樓:匿名使用者

在a.cpp中,定義了一個方法 int ggg();也定義了int a;

在b.cpp中進行如下宣告:

extern int a;

extern int ggg();

然後直接使用就可以了

10樓:匿名使用者

例:檔案test1.cpp有類class a;檔案test2.cpp有類class b.

如在test2.cpp中想用a:

#include "test1.cpp"

1. a = new a,即可用a去訪問a中提供的介面

2. a *a = new a;同樣達到目的

當然一般的做法是將類的宣告放在.h檔案裡,定義放在.cpp檔案,然後可以直接在b類中儲存一個a類的指標,那樣即可實現使用a類了。

c++,這個詞在中國大陸的程式設計師圈子中通常被讀做「c加加」,而西方的程式設計師通常讀做「c plus plus」,它是一種使用非常廣泛的計算機程式語言。c++是一種靜態資料型別檢查的,支援多重程式設計正規化的通用程式設計語言。它支援過程化程式設計、資料抽象、物件導向程式設計、泛型程式設計等多種程式設計風格。

它是「c plus plus」的簡稱。是繼c語言之後又一種計算機程式語言,c++程式語言同時支援所有的c語言語法。c++和c相似:

但c是程序導向的程式設計語言,而c++是物件導向的程式設計語言,不過c++語言保持了對c語言的相容,也就說是在c++程式可以不用修改的插入c語言**。

cpp是用c++語言編寫的源**檔案的字尾名。它對類的強大支援可以使它編寫出更優質的程式。

11樓:劉文正粉絲

a中已經定義, 所以b中不能再定義了, 應該宣告.

變數的話你只用寫extern int a;即可.

加上extern後, 一般來說這就是宣告瞭.

請教 如何執行含多個cpp的一個c++專案裡面的一個cpp

12樓:

不要包含對應其他cpp的標頭檔案就可以了吧,或者,你把你要執行的cpp複製到其他的資料夾裡面單獨執行

13樓:匿名使用者

每一個c++專案中可以包含多個cpp檔案和.h檔案,不過只能有而且必須有一個cpp檔案中包含main函式,否則就會報錯。所以在一個c++專案中不能單獨執行一個cpp檔案,只能執行一個專案。

如果你想一個一個的執行cpp檔案,請建立多個專案,或者在專案中排除上一個包含main函式的檔案(在vc6.0和vs2008/vs2010中的方法是右擊檔案——在專案中排除,這個操作不會刪除檔案,只是從當前專案中排除該檔案。),新增下一個包含main函式的檔案。

14樓:

在同一個工程檔案中,只能是包含一個main函式,而這個main函式就是程式執行的入口,其他的cpp檔案應該來說只是函式的定義和實現,在main函式中不呼叫這些函式應該就可以了。

c++中同一個工程中的一個.cpp檔案怎樣呼叫另一個工程中的.cpp檔案

15樓:匿名使用者

如果是全域性的函式,只要用extern作一把函式宣告就可以呼叫了了。

如果想用另外一個類,建議把類寫成.h+.cpp格式

,然後這邊#include 一下 .h

16樓:陡變吧

建立一個與另一個.cpp檔案(例如b.cpp)對應的.

h檔案(如b.h),然後在第一個.cpp檔案(如a.

cpp)中包含這個b.h檔案(#include b.h),這樣在a.

cpp中就可以呼叫b.cpp中的函式了

c檔案如何執行,c 中如何提取檔案內容

不同的編譯器,執行 的方式有所不同,但大概的操作步驟是相同的。這裡以vs2010舉例 1 開啟vs2010主介面,軟後選擇,檔案 新建 專案 在專案型別中選擇 visual c 然後在右側的模板中點選 win32控制檯應用程式 並在下面輸入一個專案名稱。輸入專案名稱後確定。2 在對話方塊中,應用程式...

如何在c盤不用的檔案刪除,如何在C盤不用的檔案刪除

最簡單的辦法,是開啟我的電腦,右鍵點c盤,然後,選擇清理.在文字框裡將要清理的東東前面打上勾,就可以了.同時,在裡面也有刪除系統還原點,這樣就可以增大c盤的空間.並且,你可以對它進行碎片整理.也可以增大空間. 從 控制面板 的 新增刪除程式 中把不用的程式刪掉。 我拿菜刀向你笑 那你就其他檔案怎麼上...

如何在C中刪除控制元件,如何在C 中刪除一個控制元件

void ds control item else private void button1 click object sender,eventargs e 看checkbox的parent是誰 1 如果checkbox是放在panel 比如canvas,grid,dockpanel之類的 中的,呼...