본문 바로가기

포인터4

C++ 29 [스마트 포인터] https://learn.microsoft.com/ko-kr/cpp/cpp/smart-pointers-modern-cpp?view=msvc-170 스마트 포인터(최신 C++) 자세한 정보: 스마트 포인터(최신 C++) learn.microsoft.com ▣ 스마트포인터 : C++11 버전 이후부터 새로운 스마트포인터 제공 ▣ 스마트포인터 : 메모리 할당 시 따로 delete를 사용하지 않아도 메모리 자동해제 ▣ 스마트포인터 종류 ▣ unique_ptr : 하나의 객체에 하나의 포인터만 소유권을 가질 수 있는 스마트포인터 ▣ shared_ptr : 하나의 객체가 참조하는 스마트 포인터가 총 몇 개인지를 참조하는 스마트포인터 ▣ weak_ptr : shared_ptr 객체에 대한 접근은 가능하지만 메모리 소.. 2023. 5. 16.
C++ 07 [this 포인터] ▣ this 포인터 : 객체 자신에 주소 포인터 ▣ this->num 코드는 test객체의 포인터(클래스 Test의 int num = 0)를 접근하여 대입 ▣ 클래스의 멤버함수와 생성자함수에서만 this 사용이 가능하다. ▣ 멤버변수와 멤버함수의 매개변수의 이름이 동일할 때 this로 객체 자신을 접근하여 사용한다. ▣ 멤버 함수에서 자신의 주소를 리턴해야 할 때 사용한다. ▣ this는 정적 멤버함수(static 함수)에서는 this를 사용할 수 없다. ▣ 멤버함수에서 객체의 주소를 this로 접근이 가능하다. ▣ 위에 코드를 풀어서 작성하면 이렇게 test.testfunc(&test, 10);처럼 주소를 매개변수로 전달하고 컴파일러가 void testfunc(Test* this, int num) 코드.. 2023. 3. 24.
C++ 05 [객체배열] ▣ 객체배열 만들기 : 클래스이름 배열이름[크기]; ▣ 객체배열을 초기화하는 방법 : 클래스이름 배열이름[크기] = { 클래스이름(), 클래스이름(값)}; ▣ 객체배열 인덱스 수만큼 초기화를 해야 한다. ▣ Test() : 매개변수가 없는 생성자 호출 ▣ Test(10) : 매개변수가 있는 생성자 호출 ▣ 소멸자는 큰 숫자 인덱스부터 소멸한다. 그렇기 때문에 매개변수가 있는 소멸자가 먼저 호출되었다. 2023. 3. 24.
C언어 16장_1(포인터, 메모리) ▣ 안녕하세요 ^^ 저번장에 함수 해보셨나요?? 어렵죠? 많이 ㅠ.ㅠ 하지만 포기하지 마세요!!! 하실 수 있습니다. 제가 처 음장에서 이야기한 것처럼 코딩을 꼼꼼하게 읽는 훈련을 하시면서 반복적으로 사고하고 코딩하시면 할 수 있습니다. 어려우신 게 있으시면 댓글 남겨주세요. ▣ 자 오늘은 C언어를 공부할 때 가장 어려워하는 포인터를 진행해보겠습니다. 포인터를 진행하면서 메모리에 대한 이야기도 하겠습니다. 이 부분은 할 이야기가 많아 챕터를 나누겠습니다. ▣ 제가 이걸 준비하면서 여러 책과 좋은 강사님들에 자료를 많이 읽어보고 저도 다시 공부해보았습니다. 가능하면 쉽게 설명하도록 하겠지만 여러분들이 꼭 하셔야 할 건 꼼꼼하게 코딩을 읽는 훈련을 하셔야 한다는 겁니다. 그냥 보고 무작정 어렵다고 포기하시면.. 2020. 5. 11.