boost中自动确定数据类型(BOOST_TYPEOF和BOOST_AUTO)的使用
来源:互联网 发布:p2p网贷数据查询 编辑:程序博客网 时间:2024/05/16 06:54
#include<boost/typeof/typeof.hpp>#include<vector>#include<iostream>#include BOOST_TYPEOF_INCREMENT_REGISTRATION_GROUP() //为了注册新的数据类型using namespace std;namespace ex{ //定义新的数据类型struct demo_class{int a,b;};BOOST_TYPEOF_REGISTER_TYPE(ex::demo_class) //向typeof库注册类}vector<string> func(){ vector<string> v(10,"气死你气死你");//返回vector<string>的函数 return v;}int main(){BOOST_TYPEOF(2.0*3) x=2.0*3;//推导类型位double,并将结果赋值给xcout<<x<<endl;BOOST_AUTO(y,2+3);//推导类型为int,并将结果赋值给ycout<<y<<endl;BOOST_AUTO(a,new double[20]);//推导a的类型为double *a,并使a指向分配的内存空间首地址a[1]=20.0;cout<<sizeof(a)<<endl;//空间大小为20cout<<a[1]<<endl;BOOST_AUTO(p,make_pair(1,"string"));//推导p的类型为pair,并将(1,“string”)赋值给pcout<<p.second<<endl;//输出stringBOOST_AUTO(v,func());//推导v的类型为vector<string>,并将数据完整赋值给vv.push_back("just for test");vector<string>::iterator it=v.begin();while(it!=v.end()){cout<<(*it).c_str()<<endl;it++;}//注册新的类型BOOST_AUTO(x1,make_pair("test",ex::demo_class()));//推导x1的数据类型为pair,并将该pair赋值给x1cout<<typeid(x1).name()<<endl;//输出x1的数据类型x1.second.a=10;x1.second.b=20;cout<<x1.second.a<<"\t"<<x1.second.b<<endl;getchar();}
0 0
- boost中自动确定数据类型(BOOST_TYPEOF和BOOST_AUTO)的使用
- BOOST_TYPEOF和BOOST_AUTO
- BOOST_TYPEOF和BOOST_AUTO
- BOOST_TYPEOF和BOOST_AUTO
- BOOST_TYPEOF和BOOST_AUTO
- BOOST_TYPEOF和BOOST_AUTO
- BOOST_TYPEOF和BOOST_AUTO 作用
- Boost学习笔记(五)---宏介绍BOOST_TYPEOF和BOOST_AUTO
- 【Boost】boost库中function和bind一起使用的技巧(一)
- 【Boost】boost库中function和bind一起使用的技巧(二)
- BOOST_AUTO
- Java中基本数据类型的自动拆箱和装箱
- Java中基本数据类型的自动拆箱和装箱
- Java中基本数据类型的自动拆箱和装箱
- boost库中singleton_pool和pool_allocator的使用
- boost的库中bind和function使用实例
- Boost和标准库中正则表达式的使用
- boost中regex的使用
- UIAlertView
- ios 应用程序证书安装以及发布
- 如何将Vim打造成一个成熟的IDE
- github上不去?shadowsocks抽风?
- Linux 学习笔记---网络管理
- boost中自动确定数据类型(BOOST_TYPEOF和BOOST_AUTO)的使用
- android 配置文件解析各个文件的内涵
- 另谈GetHashCode函数
- 异常类基础知识
- hadoop2学习URl
- 四个开源商业智能平台比较(四)
- Struts2的输入校验
- float与double的范围和精度
- Source Insight 支持 PHP代码的详细设置