본문 바로가기

프로그래밍/[C++]

[C++]용어정리

static 변수: 클래스 내에서 공유되는 변수

class Marine {

static int total_marine_num;//클래스 내부에서 선언, 선언과 동시에 초기화 불가

private: ...

int Marine::total_marine_num = 0;//클래스 외부에서 초기화 필요

static 함수: 객체별로 존재하는 것이 아닌 클래스별로 존재하는 함수, 객체없이 클래스에서 자체 호출 가능

static void show_total_marine();

void Marine::show_total_marine() { std::cout << "전체 마린 수 : " << total_marine_num << std::endl; }

오버로딩: 같은 이름의 함수를 인자를 달리 하여 정의하는 것을 의미

foo();
foo(int input);

오버라이딩: 이름과 인자들이 같은 함수 이지만 다른클래스에 정의되어 있어 다른 함수로 취급

explicit 함수: 암시적 형변환을 막아주는 함수

explicit MyString(int capacity);

mutable: 멤버 변수를 mutable로 선언하면 const함수를 통해서도 변환 할 수 있음, 사용자 인터페이스 입장에선 내부 변수를 바꾸진 않지만 함수 내부적으론 바뀌어야 할때 사용

class A { mutable int data_;

dynamic binding(동적 바인딩): 컴파일시에 어떤 함수가 실행될 지 정해지지 않고 런타임시에 정해지는 일

virtual void what() {cout<<"기반 클래스의 what()"<<endl;

'프로그래밍 > [C++]' 카테고리의 다른 글

[C++]변수 이름짓는법  (0) 2020.04.22
[C++]class의 static 변수 함수, lnk2001, lnk1120오류  (0) 2020.03.10