[c++] 변수의 존속 기간 , 스코프 (duration , scope) 본문

객체지향프로그래밍 (C++)

[c++] 변수의 존속 기간 , 스코프 (duration , scope)

미니모아 2020. 7. 13. 14:46
반응형
  1. 외부 변수, 함수 참조
    //test.cpp 
    int e = 1000
    void Func() {
     cout << "외부 함수 참조" << endl;
    }
    //main.cpp
    extern int e
    extern void Func();
    void main(){
    cout << e;
    Func();
    }

2. static 변수 
    - 지역변수 
    함수가 소멸되더라도 값은 유지됨, 메인에서 참조할 수 없음 , 스코프는 바뀌지 않음       

void test(){
static int a = 0;
cout << a++ << endl;
}

void main(){
test();
test();
test();

//출력결과 
0
1
2

} 

//test.cpp
static int e = 100;

main.cpp

extern int e;

void main(){
cout << e << endl; //에러 
}


3. 외부 c 코드 함수 참조 

- 전역변수
외부 접근 불가

extern "c" void Func(); 

 

4.register
- register가 사용 여유가 있다면 register 연산을 사용하도록 함, 요즘은 별로 필요 없다

반응형
Comments