류지나 2020. 7. 8. 15:53

static

-정의: static은 실행시 1순위, static함수나 변수를 첫단계로 메모리에 올려 시행.

 

>변수앞에 붙음:인스턴스 없이도 존재함

//지역변수: 함수 블록(범위) 안에서만 접근

//전역 변수: 변수의 범위를 파일 범위로 제한

>함수앞에 붙음:컴파일 단위 내에서만 호출할 수 있는(외부로 노출하지 않는) 함수

 

ps.

-정적 변수는 매개변수로 사용할 수 없음. 

-커널에 static 함수 선언이 많은 이유는, c 로 모듈화, 객체화를 많이 했기 때문. c++에서 흔히 사용하는 정보의 숨김, 등의 이유겠죠, 참고로 커널의 함수의 프로그램코드는 항상 메모리상에 존재함.