나는 왜 우리가 코딩하는지 궁금해했다
virtual void MyFunction() = 0;
그리고 아닙니다
pure virtual void MyFunction();
이 결정의 근거에 대한 참조가 있습니까?
답변
에서 디자인과 C의 진화 ++ 비얀 스트로브 스트 룹 – – 애디슨 – 웨슬리 (ISBN 0-201-54330-3) – 장 13.2.3 :
흥미로운
= 0
키워드는 새로운 키워드를 도입 할 수있는 확실한 대안pure
이나 새로운 키워드abstract
를받을 가능성이 없었기 때문에 선택되었습니다. 내가 제안했다면pure
, 릴리스 2.0은 추상 클래스없이 제공되었을 것입니다. 더 좋은 구문과 추상 클래스 중 하나를 선택하면 추상 클래스를 선택했습니다. 지연을 위험에 빠뜨리고 특정 싸움을 벌이는 대신pure
0을 사용하는 전통 C 및 C ++ 규칙을 사용하여 존재하지 않습니다 .
어쨌든 C ++ 표준 (§ 9.2-클래스 멤버) = 0
을 보는 것을 순수 지정 자라고합니다 .