在C++中,构造函数中是不能使用虚机制的,但是在java中却能用,求高手解释为什么?C++代码:
#include<iostream>
using namespace std;class A{
public:
A(){func();} void func(){
cout<<"A::func"<<endl;
}
};class B:public A{
public:
B(){} void func(){
cout<<"B::func"<<endl;
}
};int main(){
new B;
}---------------------------------------------------------------------------------------------------------------------------------------------java代码:
public class Main {

public static void main(String[] args) {
new B();
}
}class A{
A(){
func();
}

void func(){
System.out.println("A::func");
}
}class B extends A{
B(){

}

void func(){
System.out.println("B::func");
}
}----------------------------------------------------------------------------------------------------------------------------------------------上面C++代码输出的是A::func,而java代码输出的是B::func。