例えば、次のようなコードである:classBase{public:virtualvoidmethod(){std::cout<<"Base";}};classDerived:publicBase{public:virtualvoidmethod(){std::cout<<"Derived";}};intmain(){Base*pBase=newDerived;pBase->method();//outputs"Derived"return0;}virtualメソッドの呼び出しでは最も下位のクラスのメソッドが使われる。
多型是一项共通的标准编程工具，衍生类别的物件可以被当作基础类别的物件之实体使用，但能够呼叫衍生物件的函式，或称方法（methods），例如以下的程式码：classBase{public:virtualvoidmethod(){std::cout<<"Base";}};classDerived:publicBase{public:virtualvoidmethod(){std::cout<<"Derived";}};intmain(){Base*pBase=newDerived;pBase->method();//outputs"Derived"deletepBase;return0;}唤起的virtual函式是属于位于继承最下位之类别的。