[C++11] Deleted functions
이전에 외부에서 함수의 사용을 막고자 할 때 (예를 들면 객체의 복사를 막고자 할 때) pirvate에 선언함으로써 해당 함수의 호출을 막았었다. class A { private: A(const A&); } 이제는 `delete` 키워드를 통해 사용하고자 하지 않는 함수의 사용을 완전 봉쇄할 수 있다. 특히나 객체의 복사를 막고자 할 때 유용하게 사용할 수 있다. #include class A { private: int x; public: A(int x) : x{x} {}; A(const A&) = delete; A& operator=(const A&) = delete; }; int main(void) { A x{1234}; A y = x; // error -- call to deleted bopy co..
C++/Modern C++(11, 14, 17, 20)
2023. 8. 24. 18:35