运行代码:
//定义带有一个虚函数vf()和一个非虚函数f()的类B1
//在B1内定义这两个函数,使它们都输出自己的名字(例如“B1::vf()”)。
//将这两个函数定义为公有的
//建立一个B1对象并且调用每个函数
#include"std_lib_facilities.h"
//----------------------------------------------------------------------
//定义B1类。
class B1
{
public:
virtual void vf() { cout<< "B1::vf()\n"; };
void f() { cout<< "B1::f()\n"; };
};
//----------------------------------------------------------------------
int main()
try{
B1 b1;
b1.vf();
b1.f();
}
catch (exception& e) {
cerr << "error:" << e.what() << '\n';
keep_window_open();
return 1;
}
catch (...) {
cerr << "Oops:unknown exception!\n";
keep_window_open();
return 2;
}
//-----------------------------------------------------------------------
运行结果: