当前位置:编程学习 > C/C++ >>

字符串数值互转

[cpp] 
// 王智泉 2012/06/13  
 
#ifndef __StringHelper__H__  
#define __StringHelper__H__  
 
#include <string>  
#include <sstream>  
 
#define iToStdS(v) ValueToString<int>(v).str()  
#define fToStdS(v) ValueToString<float>(v).str()  
#define dToStdS(v) ValueToString<double>(v).str()  
 
#define StdSToI(v) StringToValue<int>(v).value()  
#define StdSToF(v) StringToValue<float>(v).value()  
#define StdSToD(v) StringToValue<double>(v).value()  
 
// 数值转字符串  
template<typename T> 
class ValueToString 

public: 
 
    ValueToString(T v) 
    { 
        std::stringstream strem; 
        strem << v; 
        _str = strem.str(); 
    } 
 
    std::string& str()   
    { return _str; } 
 
private: 
    std::string _str; 
}; 
 
// 字符串转数值  
template<typename T> 
class StringToValue 

public: 
 
    StringToValue(const std::string& s) 
    { 
        std::stringstream strem(s); 
        strem >> _val; 
    } 
 
    T value() 
    { 
        return _val; 
    } 
 
private:   www.zzzyk.com
 
    T _val; 
}; 
 
#endif
作者:xuhongwei0411 
补充:软件开发 , C++ ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,