inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버

static과 싱글톤

함수 내 정적 변수 vs 클래스 내 정적 변수 질문 드립니다.

해결된 질문

303

김성범

작성한 질문수 15

1

20231005_153257.jpg

main() 함수 내에서

(UserManager 함수 내에서 선언한) static UserManager um에 접근을 시도할 때

class UserManager에 um 멤버가 없습니다.

라는 오류가 뜨더라구요.

이 오류가 뜨는 이유가 함수 내에서 선언한 정적 변수는 함수를 통해서만 접근할 수 있기 때문인가요?

 

그렇다면 위의 함수 내에서 정적 변수를 선언한 방식과

아래처럼 class 내에 정적 변수를 선언했을 때

정적 변수가 생성되는 위치와 생성 과정이 다른 건가요?

class UserManager

{

public:

static UserManager um;

...

}

UserManager UserManager::um;

 

 

 

정적변수 static

답변 1

0

Rookiss

이 오류가 뜨는 이유가 함수 내에서 선언한 정적 변수는 함수를 통해서만 접근할 수 있기 때문인가요?
네!

그렇다면 위의 함수 내에서 정적 변수를 선언한 방식과
아래처럼 class 내에 정적 변수를 선언했을 때
정적 변수가 생성되는 위치와 생성 과정이 다른 건가요?

그렇습니다. 함수 내부에 있는 static 변수는
맨 처음 함수가 실행될 때 생성되고,
그렇지 않은 static은 프로그램 구동 시점에 만들어집니다.

2

김성범

정말로 생성 위치가 다르네요, 감사합니다!

 

혹시 다른 분께 도움이 될까하여 남깁니다.

44333.png

MyLinkedList에 Node 클래스를 정적 중첩 클래스로 선언하는 이유

0

283

1

static 영역에는 static 변수들을 보관한다는 설명에 관해서

0

327

1

Static 변수 값 관리 질문

0

403

1

private static int count 인 경우

0

916

3

private static method를 사용하는 이유를 알고 싶습니다.

1

2217

1

구글 클라우드에서 static 폴더 경로 설정 문제

0

627

2

static 메소드와 instance 메소드의 접근?

0

727

1

정적 배포 관련

0

574

1

Something::_init Something::s_initializer; 의 의미는 무엇인가요??

0

544

1

안녕하세요 선생님 STATIC 설정 질문 드립니다!

0

294

1

ApplicationContext와 static inner class 관련

1

301

1

CoreGlobal과 ThreadManager::InitTLS 관련 질문

0

541

1

resources 영역의 파일 변경시 Rerun을 꼭 해줘야 하나요??

0

337

1

Context에 대해서 궁금한게 있습니다

0

262

1

static File 불러오기 에러

0

1274

3

static 변수 활용

0

302

1

static함수 포인터 리턴

0

241

1

static,프로퍼티와 관련하여 질문이 있습니다

0

200

1

collectstatic 관련 질문입니다

0

491

1

사진첨부 궁금점

0

284

1

static root 실제 저장 위치

0

305

2

자바8 static 변수

1

492

1