디폴트들 사용금지령(effective c++ 06)

2015. 7. 27. 04:00프로그래밍/Effective C++

728x90
728x90

서론

클래스에서 기본적으로 제공하는 기능들이 있다.(복사생성자, 대입연산자 등)

자동으로 이러한 기능들이 실행되는 것을 막기 위해서는 private로 선언하면 되겠지만, 

이는 friend키워드에 대해서는 여전히 무방비하다.

자동제공 되는 기능에 대응되는 메소드를 private로 선언한 후

구현하지 않은채로 두고, 해당 클래스를 상속받아 사용하는 방법이 있다.


예시

C++에서 class에 대해 기본적으로 제공하는 기능들은 사용자가 

제한하지 않는다면 컴파일러가 임의로 작동하고만다. 

이렇게 예외적인 상황없이 사용자가 의도대로 사용하려 하는 경우 해당 기능을 반드시 처리하여야 한다


728x90
반응형