前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C++ 类型转换操作符重载

C++ 类型转换操作符重载

原创
作者头像
code-x
发布2022-08-31 14:24:52
4480
发布2022-08-31 14:24:52
举报
文章被收录于专栏:code-xcode-x

示例

代码语言:javascript
复制
template <typename T>
operator T () const
{
}

Poco库中的使用

Var.h

Poco::Dynamic::Var

代码语言:javascript
复制
template <typename T>
operator T () const
{
    VarHolder* pHolder = content();

    if (!pHolder)
            throw InvalidAccessException("Can not convert empty value.");

    if (typeid(T) == pHolder->type())
        return extract<T>();
    else
    {
        T result;
        pHolder->convert(result);
        return result;
    }
}

usage

代码语言:javascript
复制
// 类型是Var
auto count_var = json->get("count");
// 能够直接"赋值" 给 int 型变量 有点动态语言的感觉了
int count = count_var;

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档