-
카테고리
-
세부 분야
게임 프로그래밍
-
해결 여부
미해결
static 변수 사용에 대해서 헷갈립니다.
22.02.07 16:35 작성 조회수 190
0
Cmera.h에서
public:
// TEMP
static Matrix S_MatView;
static Matrix S_MatProjection;
이렇게 선언해 줬는데
static이라는게 전역 처럼 사라지지 않지만 범위 안에서만 사용 가능한 변수인 거잖아요?
이런 경우 사용 범위가 어떻게 되는 건가요?
그냥 전역처럼 프로그램 전체에서 사용 할 수 있는건가요? 그럼 전역변수랑 마찬가지로 사용되고 있는건가요?
그리고 Camera.cpp에서
Matrix Camera::S_MatView;
Matrix Camera::S_MatProjection;
정의부에 한번 더 써줘야 하는 이유가 좀 이해가 안갑니다. 그냥 .h에서 한번 선언하면 되는 거 아니었나요?
답변을 작성해보세요.
2
Rookiss
지식공유자2022.02.07
안녕하세요,
사용 범위는 전역이 맞고,
cpp에서 또 써주는 '이유'라기보다는
그냥 class 안의 static 변수 사용법이 그렇습니다.
아래 내용 참고 바랍니다.
https://www.geeksforgeeks.org/static-keyword-cpp/
답변 1