抽象和虚拟都将在子类中被覆盖而不是差异。
是虚拟方法有身体和抽象只是一个签名????
答案 0 :(得分:26)
是虚拟方法有身体和抽象只是一个签名????
完全。关键是虚拟方法可以在派生类中被覆盖,而抽象方法必须被覆盖。同样,具有至少一个抽象方法的类本身必须是抽象的,即它不能直接实例化,因为它的实现(部分)缺失。
最后,每个抽象方法也是虚拟的暗示。 virtual
基本上只是意味着该方法在运行时被调度到正确的类,因此可以重写它以实现运行时多态性。
答案 1 :(得分:19)
摘要意味着你必须覆盖它。虚拟意味着您可以覆盖它。或多或少。
答案 2 :(得分:1)
我同意这两个答案,所以我不再重复。但这里有一个可能有用的链接。