[英]C++ variables declaration within enum declaration
我有以下代碼:
#include <iostream>
using namespace std;
enum Week_Day {SAT, SUN, MON, TUE, WED, THU, FRI} wd1 = FRI;
Week_Day wd2 = SAT;
int main()
{
cout << "\n " << wd1;
cout << "\n " << wd2;
cout << "\n\n\n";
}
我搜索了wd1
和wd2
聲明方式之間的區別,但是在我看來,這只是為了方便。
是真的,還是我錯過了什么?
更新1:
好的, wd1
和wd2
現在都是全局變量。
還有其他區別嗎?
是的,在第一個處定義了枚舉,並立即使用它來聲明wd1,第二個是另一個聲明而無需重新定義。 相同的代碼在兩個不同的地方沒有區別。 另一個區別是由於它們在代碼中定義的位置,第一個是全局的,而第二個是局部的。 全局意味着變量可以在代碼中的任何地方使用,並且每個人都知道。 但是局部變量僅在一個塊內具有生命周期
{
SomeClass someVar;// defined here
...
// die here, the destructor will be called automatically by the runtime here
}
建議在這里閱讀
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.