-
카테고리
-
세부 분야
게임 프로그래밍
-
해결 여부
해결됨
강의에서 코드 질문입니다
21.07.20 12:21 작성 조회수 127
0
const int32 randValue = ::rand() % 2;
에서 :: 를 사용하는 이유가 궁금합니다
::는 범위지정 연산자로 클래스명:: 클래스에 있는 멤버 함수
이렇게 사용하는 경우는 알아도
허공? 에다 ::를 찍고 rand()를 하는 것은 처음 봅니다
:: rand( ) 가 어떻게 작동하는지 궁금합니다.
답변을 작성해보세요.
1
Rookiss
지식공유자2021.07.20
global namespace라고 해서 사실 안 붙여도 아무런 상관이 없고 100% 동일하게 동작합니다.
그런데 사용하다 보면 은근 중독성이 있는게,
::Func()가 붙은 애들은 내가 직접 만든게 아니라,
표준 C++ 라이브러리에서 제공하는 API라는 것이 보여서 가독성이 조금 좋아집니다 (개인적 의견)
특히 네트워크 라이브러리를 만들 때 함수가 많아지면 헷갈릴 수 있기 때문에
표준 함수라는 의미로 앞에다가 ::를 붙이는 편입니다.
https://salkuma.wordpress.com/2014/02/05/%EC%9C%BC%EB%A1%9C-%EC%8B%9C%EC%9E%91%ED%95%98%EB%8A%94-namespace/
답변 1