YSTest
PreAlpha_b500_20140530
The YSLib Test Project
|
C++ 转换模板。 更多...
#include "type_op.hpp"
#include "cassert.h"
#include <memory>
#include <typeinfo>
#include <initializer_list>
命名空间 | |
ystdex | |
ystdex::details | |
函数 | |
template<typename _tDst , typename _tSrc > | |
_tDst | ystdex::union_cast (_tSrc x) |
使用匿名联合体进行的类型转换。 更多... | |
template<typename _tDst , typename... _tSrc> | |
std::initializer_list< _tDst > | ystdex::initializer_cast (_tSrc &&...x) |
初值符列表转换。 更多... | |
template<typename _pDst , class _tSrc > | |
_pDst | ystdex::polymorphic_cast (_tSrc *x) |
多态类指针类型转换。 更多... | |
template<typename _pDst , class _tSrc > | |
_pDst | ystdex::polymorphic_downcast (_tSrc *x) |
多态类指针向派生类指针转换。 更多... | |
template<typename _rDst , class _tSrc > | |
_rDst | ystdex::polymorphic_downcast (_tSrc &x) |
template<typename _rDst , class _tSrc > | |
enable_if_t<!is_reference < _tSrc >::value, _rDst > | ystdex::polymorphic_downcast (_tSrc &&x) |
template<typename _pDst , class _tSrc > | |
_pDst | ystdex::polymorphic_crosscast (_tSrc *x) |
多态类指针交叉转换。 更多... | |
template<typename _rDst , class _tSrc > | |
_rDst | ystdex::polymorphic_crosscast (_tSrc &x) |
template<typename _rDst , class _tSrc > | |
enable_if_t<!is_reference < _tSrc >::value, _rDst > | ystdex::polymorphic_crosscast (_tSrc &&x) |
template<typename _tDst , typename _tSrc > | |
_tDst | ystdex::general_cast (_tSrc *x) |
一般类型转换。 更多... | |
template<typename _tDst , typename _tSrc > | |
_tDst | ystdex::general_cast (_tSrc &x) |
template<typename _tDst , typename _tSrc > | |
const _tDst | ystdex::general_cast (const _tSrc &x) |
C++ 转换模板。
在文件 cast.hpp 中定义.