flow-vector
C++ - new, delete 연산자
Computer Science/C,C++ 2023. 3. 11. 18:20

new, delete 연산자 c의 malloc, free 시스템 콜 함수에 대응되는 c++에서 생긴 메모리 할당/해제 연산자이다. 사용법 및 특징 // 변수 동적할당 int* a; a = new int(123); // int 크기만큼 메모리를 할당하고 123이라는 값으로 초기화 delete a; // a 메모리 할당 해제 // 배열 동적할당 int* b; b = new int[5]; // 길이 5인 int형 배열 동적 할당 delete[] b; // 배열 b 메로리 할당 해제 // 객체의 동적할당 class A { public: A(std::string name); }; A *a = new A("hello"); // A 클래스가 사용하는 생성자를 사용하여 동적할당 delete a; new 연산자로 객체를..

C++ - 참조자(reference)
Computer Science/C,C++ 2023. 3. 11. 17:42

참조자는 c++에서 새롭게 추가된 기능이다. 변수의 별명(alias)을 정의하게 된다 별명을 정의한다는 것은 하나의 변수에 두개의 이름이 생기게 되어 별명으로 변수를 사용할 수 있게 된다는 것으로 볼 수 있다. 참조자 사용 방법 및 특징 int a = 10; int b = 11; int& c = a; int& d; c = a; // compile error c = b; // a : 10위와 같은 방법으로 참조자를 선언 할 수 있다. 1) 참조자는 선언과 동시에 초기화 되어야 한다. 예외의 경우 함수의 매개변수로 참조자를 받을때 : 함수가 호출될 때 실제 인수로 초기화 된다. 클래스의 멤버로 사용할 때 : 생성자에서 반드시 초기화 해야함 변수를 extern 선언할 때 : 레퍼런스의 초기식이 이미 외부에 선..