我在工作项目中发现了一些代码,当子类未重写基类函数时,该代码会引发错误(实际上,使用此实用程序的基类实际上是抽象的)。当我看到此消息时,我的第一个反应是:“为什么他们不使这些方法成为纯虚拟方法?”但是,有问题的代码已有15年的历史了,我不确定是否创建该代码来填补纯虚拟设备以后会填补的空白(假设当时不存在)。
最佳答案
自第一个正式的C++ 98标准以来(可能更早),纯虚拟函数就一直存在。
参见ISO / IEC 14882:1998 [class.abstract]
在Stroustrup的“C++历史:1979− 1991”(pdf)中,他做了更多的挖掘工作,他提到抽象类在1989年左右出现。
关于c++ - C++中是否始终存在纯虚拟方法?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56637341/