tars源码漫谈第33篇------tc_pack.h/tc_pack.cpp(序列化和反序列化)

tc_pack.h/tc_pack.cpp文件主要涉及tars框架的序列化和反序列化操作,通过重载<<和>>实现方便的使用方式。本文将探讨其基本用法。
摘要由CSDN通过智能技术生成

       看tc_pack这个名字就知道, 这可能涉及到打包操作, 进去看一下, 果然。 其实, 就是序列化和反序列化。

       源码中充斥了对 <<和>>的重载, 让使用者感觉到比较爽, 我们来看看如何使用:

        bool b = false;
        char c = 'x';
        short si = 100;
        int   ii = 200;
        char cn[] = "xyz";
        string sn = "source code is good";

        TC_PackIn objIn;
        objIn << b << c << si << ii << cn << sn;

        string s = objIn.topacket();

        TC_PackOut po(s.c_str(), s.length());
        objOut >> b;
        assert(b == false);
        cout << "bool OK" << endl;

        objOut >> c;
        assert(c == 'x');
        cout << "char OK" << endl;

        objOut >> si;
        assert(si == 100);
        cout << "short OK" << endl;

    
03-15
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值