열혈강의 3장
C++ 문자열에 대해서
char *a --> 함수 넘겨줄 때
void show(char *_a);
or
char a[20];
void show(char* _a);
이 부분 좀더 공부하고
char* 로 문자열을 받을 수 있는 이유
C++ string에 대해 공부하기
생성자 : 가급적 초기화 용도로 사용하기
생성자를 private로 선언하면 오류가 난다.
하지만 private로 선언하는 경우도 있다.
매개변수가 있는 생성자를 정의했을 경우
기본 생성자를 호출하려면 따로 정의를 해주어야 한다.
생성자에서 동적할당을 했을 때
소멸자에서 delete를 통해 효율적으로 해제 할 수 있다.
객체 배열에도 생성자를 이용한 초기화가 가능한가?
포인터는 스택에 있고 포인터가 가르키는 부분이 힙에 저장된거?
동적할당을 할때 a = new char[strlen(_a)+1] 해주는 이유
malloc 는 단순히 메모리를 할당해주는 것
new를 써야 생성자 호출이 이루어진다. - 162p
객체의 조건을 만족시키려면 생성자의 호출은 반드시 이루어져야 한다.
객체 포인터가 가르키는 객체의 멤버 변수, 함수 참조 ->
this는 자기 자신을 가르키는 포인터이다.
어떠한 변수이건 지역변수보다 우선일 수 없다.
char* a;
char a[20];
cin >> a;
왜 밑에꺼만 되지?
객체의 포인터 배열 선언 방법으로 하면
new를 써서 할당해주기까지 메모리를 안잡아먹나?
'C++' 카테고리의 다른 글
[C++] virtual 소멸자, virtual table // 열혈강의 (0) | 2016.12.05 |
---|---|
[C++] 상속에 대하여 // 열혈강의 (0) | 2016.12.01 |
[C++] 기초4 // 열혈강의 (0) | 2016.12.01 |
[C++] 기초2 // 열혈강의 (0) | 2016.11.30 |
[C++] 기초1 // 열혈강의 (0) | 2016.11.28 |