码迷,mamicode.com
首页 > 其他好文 > 详细

自己实现的Boost库中的lexical_cast随意类型转换

时间:2015-12-27 09:35:26      阅读:132      评论:0      收藏:0      [点我收藏+]

标签:

知道了C++的I/O设施之后。这些就变的非常easy了。

假设你常常使用,时间长了就会有感觉。这个事情是多此一举吗?就当是练习吧,知道原理之后,你会认为用起来更舒畅,更喜欢C++了。

#include <iostream>
#include <vector>
#include <string>
#include <sstream>
#include <algorithm>
#include <iterator>
using namespace std;

template<typename Result,typename Para>
Result lexical_cast(Para para)
{
    stringstream ss;
    ss<<para;
    Result result;
    ss>>result;
    return result;
}
//int ACE_TMAIN(int argc, ACE_TCHAR *argv[])
int main(int argc, char *argv[])
{

    double arr[10] = {0.1,1.2,2.3,3.4,4.5,5.6,6.7,7.8,8.9,9.0};
    vector<string> str_arr;
    for (size_t i =0 ; i< sizeof(arr)/sizeof(double) ; ++i)
    {
        str_arr.push_back(lexical_cast<string>(arr[i]));
    }
    ostream_iterator<string> out(cout," ");
    copy(str_arr.begin(),str_arr.end(),out);
    
    return 0;
}

技术分享


自己实现的Boost库中的lexical_cast随意类型转换

标签:

原文地址:http://www.cnblogs.com/bhlsheji/p/5079479.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!