2017-09-16 1 views
1

저는 현재 전체 프로그램에서 동일한 회원이되고 싶은 수업을 사용하고 있습니다. 그래서이 클래스의 생성자 사용을 비활성화해야합니다. 그 일을하는 가장 좋은 방법은 무엇입니까?(C++) 클래스를 정적으로 만들 때 더 좋은 점은 생성자를 비공개로 두거나 공개적으로 삭제하는 것입니다.


  1. 전용 생성자
  2. 생성자 (선언) = 삭제;
+5

클래스가 아닌 네임 스페이스를 사용하십시오. 질문에서 나는 네가 오직 네임 스페이스로 끝내는 범위 지정을 위해서만 클래스 이름을 사용하고 있다는 것을 이해한다. –

+0

그래, 이런 종류의 질문은 일반적으로 수업을 사용해서는 안된다는 신호입니다. 다른 언어와 달리 C++의 모든 것이 클래스 여야하며 종종 그렇게해서는 안됩니다. –

+0

[생성자를 명시 적으로 삭제하는 이유는 무엇입니까?] (https://stackoverflow.com/questions/13654927/why-explicitly-delete-the-constructor) – datell

답변

4

당신이하고있는 일을 가장 잘 설명하는 코드를 작성하십시오. 클래스를 비공개로 만들려면, 생성자를 private으로 만드십시오. 아무도 클래스를 생성 할 수 없도록하려면 delete 생성자를 사용하십시오.