C++의 모든 표현식(expression)은 두 가지 중요한 속성을 가지고 있다.Type(자료형) : 표현식이 나타내는 데이터의 유형Value Category(값 범주) : 표현식이 메모리에서 데이터를 어떻게 다루어야 하는지에 대한 특성C++11 이전에는 lvalue와 rvalue라는 두 가지 Value Category만 존재했으나, C++11 부터 메모리 관리와 이동 시맨틱을 보다 다양하게 지원하기 위해 이를 더 세분화했다. 이러한 변화는 C++에서 메모리 관리와 성능 최적화를 가능하게 하는 중요한 개념을 제공하며, 특히 이동 시맨틱을 통한 효율적인 자원 관리를 지원한다. Value Category의 종류1. Prime Category (기본 값 카테고리) 모든 표현식은 Prime Category ..
C++
매개변수(parameter)는 함수를 호출할 때 외부에서 전달된 값을 함수 내부에서 사용하기 위해 정의하는 변수다.매개변수는 함수 내부에서 선언되지는 않지만, 지역 범위(local scope)를 가지며 함수 호출 시 생성, 종료되면 소멸한다. 함수에 인수를 전달하는 방법에는 세 가지가 있다.값에 의한 호출(Call by Value)참조에 의한 호출(Call by Reference)주소에 의한 호출(Call by Address) Call by Value'Call by Value 방식'은 함수 호출 시 전달하려는 변수의 복사본을 함수로 전달하는 방법이다. 이때 매개변수로 복사된 데이터는 함수 내부에서 독립된 메모리 공간을 차지하게 된다. 따라서 함수 내부에서 수정하더라도 원본 데이터에는 영향을 미치지 않는..