我很困惑如何在多個文件中定義和聲明我的變量和函數,而不使用全局變量。 比方說,我想要在'main.cpp'之外聲明和定義變量和函數,並在'main.cpp'中使用單獨的頭文件和源文件。在單獨的文件中聲明和定義變量和函數
編輯:道歉爲我不清楚的例子,但只會有一個氣球。我不想讓氣球成爲一個物體。這只是舉行一些變量和功能。
//balloon.h
bool inflated = true;
void pop();
-
//balloon.cpp
#include "balloon.h"
void pop()
{
inflated = false;
}
-
//main.cpp
#include "balloon.h"
int main()
{
pop();
return 0;
}
如果我這樣做,它給我的錯誤對於具有 '膨脹' 多重定義,而且它是在「氣球第一個聲明。 CPP」。
如果我使用'extern',它可以工作,但是會給我一些關於在'balloon.h'中初始化和聲明'膨脹'的警告。
如果我決定在balloon.h中不定義膨脹,它會給我提供有關'膨脹'的未定義引用的錯誤。
這是什麼標準的方法呢?我錯過了多個文件中的變量/函數聲明/定義的一些關鍵信息嗎?
你所描述的是**是一個全局變量。 – 2014-09-26 20:45:57
但我不想使用全局變量。 – 2014-09-26 20:48:01
然後上課。 – 2014-09-26 20:48:49