Saya selalu bertanya-tanya mengapa kita kode
virtual void MyFunction() = 0;
dan tidak
pure virtual void MyFunction();
Apakah ada referensi untuk dasar keputusan ini?
Saya selalu bertanya-tanya mengapa kita kode
virtual void MyFunction() = 0;
dan tidak
pure virtual void MyFunction();
Apakah ada referensi untuk dasar keputusan ini?
Jawaban:
Dari Desain dan Evolusi C ++ - Bjarne Stroustrup - Addison-Wesley (ISBN 0-201-54330-3) - bab 13.2.3:
Bagaimanapun melihat standar C ++ (§ 9.2 - Anggota kelas)
= 0
disebut murni-penentu .sumber
pure
kata kunci kontekstual yang Anda masukkan di akhir definisi fungsi, jadivirtual void MyFunction() pure
alih-alih= 0
, mengikutifinal
danoverride
.