をもたらすキャッシュ -静的定数は、次の例で
[21] 21
[22] 21
[23] 21 -
#include <iostream> int someMethod(){ static int a = 20; static const int result = a + 1; ++a; std::cout << " [" << a << "] "; return result; } int main(){ std::cout << someMethod() << "\n"; std::cout << someMethod() << "\n"; std::cout << someMethod() << "\n"; }
出力として付属します
同じ関数を呼び出した後にresult
の値が変更されないようにする理由は何ですか?私は変数a
の出力も印刷しましたが、確かにインクリメントされています。静的なので同じメソッドに対して複数のコピーが存在してはいけません。
理由は静的なconstですか? – EJP