YSTest  PreAlpha_b400_20130424
The YSLib Test Project
 全部  命名空间 文件 函数 变量 类型定义 枚举 枚举值 友元 宏定义  
any.h 文件参考

动态泛型类型。 更多...

#include "type_op.hpp"
#include <memory>
#include <typeinfo>
any.h 的引用(Include)关系图:
此图展示该文件直接或间接的被哪些文件引用了:

浏览源代码.

union  ystdex::non_aggregate_pod
 
union  ystdex::pod_storage< _tPOD >
 
class  ystdex::void_ref
 任意对象引用类型。 更多...
 
class  ystdex::any_ops::holder
 抽象动态泛型持有者接口。 更多...
 
class  ystdex::any_ops::value_holder< _type >
 值类型动态泛型持有者。 更多...
 
class  ystdex::any_ops::pointer_holder< _type >
 指针类型动态泛型持有者。 更多...
 
struct  ystdex::any_ops::holder_tag
 使用持有者标记。 更多...
 
class  ystdex::any
 基于类型擦除的动态泛型对象。 更多...
 
class  ystdex::bad_any_cast
 动态泛型转换失败异常。 更多...
 
struct  ystdex::pseudo_output
 伪输出对象。 更多...
 

命名空间

namespace  ystdex
 
namespace  ystdex::any_ops
 
namespace  std
 

类型定义

typedef std::uint32_t ystdex::any_ops::op_code
 
typedef pod_storage
< non_aggregate_pod > 
ystdex::any_ops::any_storage
 
typedef void(* ystdex::any_ops::any_manager )(any_storage &, const any_storage &, op_code)
 

枚举

enum  ystdex::any_ops::base_op : op_code {
  ystdex::any_ops::no_op, ystdex::any_ops::get_type, ystdex::any_ops::get_ptr, ystdex::any_ops::clone,
  ystdex::any_ops::destroy, ystdex::any_ops::get_holder_type, ystdex::any_ops::get_holder_ptr, ystdex::any_ops::end_base_op
}
 

函数

void std::swap (ystdex::any &x, ystdex::any &y) ynoexcept
 std::swapystdex::any 重载。
 
template<typename _tPointer >
_tPointer ystdex::any_cast (any *p) ynoexcept
 动态泛型转换。
 
template<typename _tPointer >
_tPointer ystdex::any_cast (const any *p) ynoexcept
 
template<typename _tValue >
_tValue ystdex::any_cast (any &x)
 
template<typename _tValue >
_tValue ystdex::any_cast (const any &x)
 
template<typename _type >
_type * ystdex::unsafe_any_cast (any *p)
 非安全动态泛型转换。
 
template<typename _type >
const _type * ystdex::unsafe_any_cast (const any *p)
 

详细描述

动态泛型类型。

版本
r1288
作者
FrankHB frank.nosp@m.hb19.nosp@m.89@gm.nosp@m.ail..nosp@m.com
自从
build 247
创建时间:
2011-09-26 07:55:44 +0800
修改时间:
2013-04-14 06:41 +0800
文本编码:
UTF-8
模块名称:
YStandardEx::Any

在文件 any.h 中定义.