用过Java的人对Java中的接口(interface)一定不陌生,就算没有自己写过接口,也多多少少用过,最近我突然想C++中如何实现与Java中的接口一样的功能?刚开始以为用虚函数就能简单搞定,后来发现,还是有点不太一样,下面我们来看个究竟~
先上一段Java中的interface的例子,比如说有一个interface叫MyInterface,其中有一个叫show的方法:
public interface MyInterface {
void show();
}
然后有两个类MyClass1,MyClass2实现了这个interface:
class MyClass1 implements MyInterface{
@Override
public void show() {
System.out.println("There is MyClass1");
}
}
class MyClass2 implements MyInterface{
@Override
public void show() {
System.out.println("There is MyClass2");
}
}
可以统一用MyInterface变量统一调用show方法,如调用MyClass1中的show:
<pre name="code" class="jav