코딩은 최대한 단순하고 직관적이게 해야한다

 

C++ 스택 메모리에 만들기(빠름) <-추천

Vector a;

 

힙 메모리에 만들기(느림)

Vector* a = new Vector();

 

초기화 리스트

class X

{

int A,B;

X::X():A(10),B(5) <-초기화

{}

}

 

생성자=>객체를 생성할때 호출

(멤버 변수의 초기화 가능)

생성자 이름=클래스 이름::클래스이름()

소멸자=>객체가 사라질때 호출

(메모리를 지우는데 사용)

소멸자 이름=클래스이름::~클래스 이름()

 

char* mChars;

mChars = new char[value + 1];

delete[] mChars; <- delete뒤에 []붙이기

 

const = 바뀌지 않는것

 

상수 포인터 : const int*

int형 상수를 가리키는 상수 포인터 (가리키는 위치 변경 가능/위치 안의 내용 변경 불가능)

-포인터 값 변경 가능

-포인터가 가리키는 주소의 내부 값 변경 불가능

 

포인터 상수 : int* const

-포인터 값 변경 불가능

-포인터가 가리키는 주소의 내부 값 변경 가능

 

int GetX() const; <=const 메서드 (해당 개체 안의 어느것도 변경하지 않음)

 

class는 struct+기능(C++에서는 class와struct가 똑같다/멤버변수의 초기화를 제외하고)

c++ = default private

c = default public

다만 C++에서 struct를 class처럼 쓰려고하면 표준이 헷갈리기 때문에 단순히 데이터만 관리하는 struct를 유지하는게 좋다.=>안전하게 표준을 지키면 memcpy(데이터 복사)에 유용-문제 발생X

'C++' 카테고리의 다른 글

C++ 7일차  (0) 2021.06.13
C++ 6일차  (0) 2021.06.12
C++ 4일차  (0) 2021.06.09
C++ 3일차  (0) 2021.06.09
C++ 2일차  (0) 2021.06.07

+ Recent posts