qhrrkfl2   7년 전

클래스 자체를 스태틱 화 시키거나, 아니면 클래스내 함수포인터 사용을 위한 스태틱 멤버함수 등등은

그안에 포함되어있는 변수 말고 함수또한 static으로 되는거니까

메모리적으로 손해보는 것이 많나요?

스태틱은 한번 생기면 안없어지고 메모리 영역에 남아서 계속 메모리를 잡아먹는다고 들었고

코드 또한 코드영역이라는데 저장된다는데...

궁금합니다.

yukariko   7년 전

static으로 변수를 몇개나 선언할건지에 따라 다르고

그 클래스가 얼마나 오래 유지될지에 따라 다를것 같습니다.

클래스가 오래 유지될수록 static과 비 static의 차이가 없을것입니다.

이런걸 떠나서 static 사용으로 인해 낭비되는 메모리는 매우 적다고 할 수 있습니다.

1KB만 해도 int 형 배열 20만개 이상 선언이 가능하니까요

static으로 배열을 선언하면 문제가 될 수 있겠으나, 포인터 변수로 선언하여 동적할당으로 대체한다면

문제 없을것 같습니다.

yukariko   7년 전

추가적으로

static 으로 함수를 선언했다고 해도 코드 영역의 메모리가 늘어나거나 하진 않습니다.

댓글을 작성하려면 로그인해야 합니다.