给这段代码加详细注释 class Parent { public: virtual void func() {} }; class Child : public Parent { public: }; int main() { Parent* p = new Child; auto& parent_tmp = typeid(&Parent::func); auto& child_tmp = typeid(p->func); if (typeid(&Parent::func) != typeid(p->func)) { std::cout << "Child has overridden Parent's virtual function." << std::endl; } else { std::cout << "Child has not overridden Parent's virtual function." << std::endl; } }
时间: 2023-02-08 13:31:02 浏览: 102
Python基于tkinter的计算器源代码,含详细代码注释
这段代码定义了一个名为Parent的类和一个名为Child的类,Child类继承了Parent类。
在Parent类中定义了一个名为func的虚函数,这意味着它可以在子类中被重写。
在main函数中,定义了一个指向Parent类型的指针p,并将其初始化为指向一个Child类型的对象的地址。
最后,定义了一个auto变量,这意味着它的类型由编译器自动推断。在这里,它的类型应该是Parent,因为p是指向Parent类型的指针。
阅读全文