C++ の関数にて広域変数を初期値に ― 2011年03月01日 04時57分09秒
sun% cat static.cpp
#include <ostream>
int global = 2;
void p( int value = global )
{
std::cout << value << std::endl;
}
int main()
{
p();
p( 1 );
global = 3;
p();
}
三度目の呼び出しの前に初期値として設定されている global 変数の値を変える。
sun% CC static.cpp
sun% ./a.out
2
1
3
最初の値は 2、最後の値は 3 になっている。
最近のコメント