mirror of
https://github.com/pocoproject/poco.git
synced 2025-10-16 07:23:44 +02:00
DynamicAny::extract performance optimization
This commit is contained in:
@@ -168,13 +168,15 @@ public:
|
|||||||
/// the stored value, otherwise a BadCastException
|
/// the stored value, otherwise a BadCastException
|
||||||
/// is thrown.
|
/// is thrown.
|
||||||
{
|
{
|
||||||
DynamicAnyHolderImpl<T>* pHolder = dynamic_cast<DynamicAnyHolderImpl<T>*>(_pHolder);
|
if (_pHolder && _pHolder->type() == typeid(T))
|
||||||
if (pHolder)
|
{
|
||||||
return pHolder->value();
|
DynamicAnyHolderImpl<T>* pHolder = static_cast<DynamicAnyHolderImpl<T>*>(_pHolder);
|
||||||
|
return pHolder->value();
|
||||||
|
}
|
||||||
else
|
else
|
||||||
throw BadCastException();
|
throw BadCastException();
|
||||||
}
|
}
|
||||||
|
|
||||||
template <typename T>
|
template <typename T>
|
||||||
DynamicAny& operator = (const T& other)
|
DynamicAny& operator = (const T& other)
|
||||||
/// Assignment operator for assigning POD to DynamicAny
|
/// Assignment operator for assigning POD to DynamicAny
|
||||||
|
Reference in New Issue
Block a user