[問題] static in function
1 #include <iostream>
2 using namespace std;
3
4 void func(void)
5 {
6 static int a = 0;
7 cout << a << endl;
8 a++;
9 }
10
11 int main()
12 {
13 for (int i = 0; i < 10; ++i)
14 func();
15
16 return 0;
17 }
code如上 結果印出 0 1 2 3 4 5 6 7 8 9
我想問的是 每次呼叫一次function 讀到這行static int a = 0;
會做什麼事情?
為什麼不會重新將 a = 0; ?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.51.126
推
10/20 15:48, , 1F
10/20 15:48, 1F
→
10/20 15:59, , 2F
10/20 15:59, 2F
→
10/20 16:04, , 3F
10/20 16:04, 3F
→
10/20 16:04, , 4F
10/20 16:04, 4F
那我有個疑問
那static 加在 class 內的data member 為什麼不能用同樣的方式
Ex.
Class A{
public:
static int a = 0;
};
※ 編輯: k0783154 來自: 140.112.51.126 (10/20 16:11)
→
10/20 16:12, , 5F
10/20 16:12, 5F
→
10/20 16:13, , 6F
10/20 16:13, 6F
→
10/20 16:13, , 7F
10/20 16:13, 7F
我有看到 但是我比較追根究柢
想說有沒有什麼邏輯的原因在 所以才來問 抱歉XD
※ 編輯: k0783154 來自: 140.112.51.126 (10/20 16:15)
→
10/20 16:18, , 8F
10/20 16:18, 8F
→
10/20 16:19, , 9F
10/20 16:19, 9F
→
10/20 16:20, , 10F
10/20 16:20, 10F
→
10/20 16:24, , 11F
10/20 16:24, 11F
→
10/20 16:24, , 12F
10/20 16:24, 12F
→
10/20 16:54, , 13F
10/20 16:54, 13F
→
10/20 17:24, , 14F
10/20 17:24, 14F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章