Delegating constructor
: C++11 부터는 생성자에서 다른 생성자를 호출할 수 있다.
Point() 생서자 안에서 Point(0, 0); code 는 무엇을 의미하는 것일까?
보기에는 x, y 를 0, 0으로 초기화하도록 하는 생성자를 호출하는 것 처럼 보일 수 있다.
하지만 이 코드는 생성자를 호출하는 것이 아니라 임시 객체를 생성하는 코드이다.
하지만 C++11 에서는 생성자안에서 다른 생성자를 호출 할 수 있다.
또한 멤버 변수 선언과 동시에 초기화도 지원한다.
피드 구독하기:
댓글 (Atom)
[C++] meta programing
재귀 호출에 관해 template meta programming 을 적용한 예제를 살펴보자. #include using namespace std; int fact(int n){ if(n factorial 연산을 하는 일반적인 재귀 호출 함...
-
Smart Pointer : 포인터처럼 동작하며 자동으로 메모리를 해제하고 안전하게 resource를 관리하도록 돕는 객체 포인터는 소멸자가 호출되지 않아 memory leak이 발생한다. Java, C#같은 VM이 있는 언어는 VM에서 G...
-
자료 구조를 순회하여 데이터에 접근하는 방법을 살펴보자. Container 에 저장된 데이터에 접근하기 위해 대표적으로 Iterator의 begin(), end() function 을 사용한다. 하지만 위 예제에서 show() 함수에 배열이...
-
inline function : 함수의 호출부에 함수의 기계어 코드로 치환되는 함수 매크로 함수는 함수의 호출처럼 보이지만 전처리계 과정에서 치환되는 것일 뿐이다. 매크로 함수의 단점으로 단항연산자(++) 을 정상적으로 처리하지 못한다. 인라...
댓글 없음:
댓글 쓰기