#include<iostream>usingnamespacestd;voidfoo(){staticinta=5;// 함수 여러 번 실행하면 처음 한 번만 실행됨.a++;cout<<a<<endl;}intmain(){foo();// 6foo();// 7staticinta=5;cout<<a<<endl;// 5foo();// 8// static int a = 9; 여기서 여러 번 하면 재정의 컴파일 에러return0;}
Const
#include<iostream>usingnamespacestd;constinta=1;voidfoo(){cout<<"foo: "<<a<<endl;}intmain(){foo();// 1// const int a = 4; 하고 // foo() 해도 결과는 1cout<<a<<endl;// 1inta=5;cout<<a<<endl;// 5constintb=2;// int b = 3; 같은 곳에선 안 됨. 재정의 오류// b = 3; const 값 변경 안 됨.cout<<b<<endl;// 2return0;}
Leave a comment