在Java中,您可以将方法标记为final,以使其不可覆盖。 在C#中,您必须将方法标记为虚拟以使其可以覆盖。 这是否意味着在C#中你应该标记所有的方法是虚拟的(除了几个你不想被覆盖的方法),因为你很可能不知道你的类可以被inheritance的方式?
据我所知,在C ++ 11中引入override关键字只不过是一个检查,以确保正在实现的function是在基类中的virtual函数的override 。 是吗?