목록2025/03/28 (2)
나만의 작은 도서관
전방 선언(Forward Declaration)이란?class MyClass;"전방 선언(Forward Declaration)"은 식별자를 정의하기 전에 식별자의 존재를 컴파일러에게 미리 알리는 것이다.전방 선언의 주 사용목적은 헤더 포함 의존성을 최소화하여 컴파일 속도를 향상하기 위함이다. (앞으로의 설명은 클래스 전방 선언을 기준으로 설명) 전방 선언 예시// Game.hclass Player; // 나중에 정의하겠다고 전방선언class Game{public: Game() {} ~Game() {}private: Player* _player; // 최상단 줄을 지우고 class Player* _player;와 같은 형태도 가능하다.}; 전방 선언이 가능한 경우와 불가능한 경우전방 선언은 컴파일러가 클..

캐스팅이란?캐스팅은 데이터 타입을 다른 데이터 타입으로 변환하는 것을 의미한다.C 스타일의 캐스팅T var = (T)expression;C++에서도 C 스타일 문법을 사용할 수 있다. C 스타일의 캐스팅은 표현식(expression) 앞에 소괄호로 둘러싼 변환할 타입 T를 적어주는 방식으로 선언한다. 일반 타입(값 타입)으로 캐스팅int a = (int)b;변환할 타입으로 비트 패턴을 재구성하는 캐스팅.단, 이전 비트 패턴의 의미를 최대한 유지하는 방향으로 재구성한다.큰 타입에서 작은 타입으로 캐스팅할 경우 상위 비트가 잘린다.예를 들어, int → short로 캐스팅할 경우, 상위 비트 2바이트가 잘려 0xffff0000 → 0x0000이 된다.연관 관계가 없는 타입 사이의 캐스팅은 컴파일 오류가 발생..