在下面的类中,这是否意味着onPaintCallback为NULL,或者我必须在类构造函数中将其设为NULL?我想在给出有效指针之前开始检查NULL.
class AguiWidgetBase
{
virtual void onPaint();
void (*onPaintCallback)(AguiRectangle clientRect) = 0;
public:
AguiWidgetBase(void);
~AguiWidgetBase(void);
};
Run Code Online (Sandbox Code Playgroud)
你拥有的是不合法的.你必须在构造函数中初始化它:
AguiWidgetBase::AguiWidgetBase() :
onPaintCallback(0)
{}
Run Code Online (Sandbox Code Playgroud)
您可以使用boost::function<void(AguiRectangle)>,除了更灵活之外,还可以将其自身初始化为null.你可以检查它:
if (f)
// ...
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
778 次 |
| 最近记录: |