작성
·
138
0
안녕하세요.
51:50 부분에
"FName 을 반복문 안에 선언하는건 여러번 전역pool 에서 조사하기 때문에 오버헤드가 발생한다.
그래서 const static FName StaticOnlyOnce(TEXT("pelvis")); 를 써서 한번만 조사하도록 하는게 좋다"
이런식으로 이해했는데요,
근데 const static 이 반복문 외부에 선언되어야 하는거죠? 예시처럼 for문 안에 있는게 아니라?
답변 1
2
로컬 스태틱의 경우에는 첫 번째 구문 실행 시에 설정되면, 이후에는 프로그램이 끝날 때까지 소멸되지 않고 그대로 유지되기에 for문 안에 있어도 성능 영향이 없습니다.
마치 전역변수처럼 동작한다고 볼 수 있는데, 함수 scope의 영향을 받는다는 점에서 전역변수와 차이가 있습니다.