📄 pr27002.cpp
字号:
////////////////////////////////////////
// File Name: pr27002.cpp
////////////////////////////////////////
#include <typeinfo>
#include <iostream>
////////////////////////////////////////
// Define the Control class.
////////////////////////////////////////
class Control
{
public:
virtual void foo() {}
};
////////////////////////////////////////
// Derive classes from Control.
////////////////////////////////////////
class TextBox : public Control { };
class EditBox : public TextBox { };
class Button : public Control { };
////////////////////////////////////////
// Paint Control objects.
////////////////////////////////////////
void Paint(Control& cr)
{
try
{
TextBox& ctl = dynamic_cast<TextBox&>(cr);
std::cout << "Paint a TextBox" << std::endl;
}
catch(bad_cast)
{
std::cout << "nonTextBox, can't paint" << std::endl;
}
}
////////////////////////////////////////
// The main() function.
////////////////////////////////////////
int main()
{
// Instantiate and paint Control.
Control ct;
Paint(ct);
// Instantiate and paint Button.
Button bt;
Paint(bt);
// Instantiate and paint TextBox.
TextBox tb;
Paint(tb);
// Instantiate and paint EditBox.
EditBox eb;
Paint(eb);
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -