I have a class that is defined as the following:
template <class WidgetType>
class CometWidget : public WidgetType;
Inside a function I am doing this:
dynamic_cast<CometWidget *>(iter2->second.second)->changesCommited_();
and it resolves the CometWidget
type, complies and run correctly.
The code runs inside the CometWidget
class.
How on earth does this happen?
Why is that so? Should it even compile?
If it's inside the declaration of CometWidget
then you don't need to explicitly qualify the template (or whatever term you use to say CometWidget<...>
).