본문 바로가기

C++/Data Type

(2)
Const const 는 데이터 선언을 할 때 객체 또는 변수를 수정할 수 없음을 지정하는 수식어로, 해당 값이 상수임을 지정하고 코드 상에서 수정할 수 없도록 컴파일러에서 세팅하게 됩니다. C++ 에서 정의된 const 값은 상수 식 대신 사용할 수 있습니다. const int maxarray = 255; char store_char[maxarray]; // allowed in C++; not allowed in C 멤버 함수를 const 로 선언하면 호출되는 객체 또는 변수를 수정하지 않는 "읽기 전용" 함수임을 지정합니다. 상수 멤버 함수는 비정적 데이터 멤버를 수정하거나 상수가 아닌 멤버 함수를 호출할 수 없습니다. 상수 멤버 함수를 선언하려면 인수 목록의 닫는 괄호 뒤에 const 를 선언해야 합니다. 즉..
Pointer - vs - Reference 포인터 ( Pointer ) 는 개체의 메모리 주소를 저장하는 변수입니다. 즉, 어떠한 데이터가 메모리에 저장될 때, 데이터가 시작되는 주소가 포인터 변수에 담기게 되는 것입니다. 참조 ( Reference ) 는 포인터와 마찬가지로 데이터의 주소를 저장하긴 하지만, 포인터와는 달리 초기화되고 나면 다른 개체를 참조하거나 Null 로 설정하는 것이 불가능합니다. 둘의 차이는 매개변수를 전달하는 방식에서도 확인할 수 있습니다. 일반적으로 매개변수를 포인터로 사용하면 Call by Address 라고 하고, 레퍼런스로 사용하면 Call by Reference 라고 합니다. Call by Address 일 경우 void CallByAddress(int* address) { *address = 20; std::..