c++ int,char,wchar_t,double,string,wstring相互转

用到了c++的标准库与模板,先给个初始版本,模板重载还没有学精通尴尬


c++实现 vs2010下可以跑通


//代码还是有冗余的,两个模板可以合成一个的,抽空再改,或者你们自己改

#include<iostream>
#include<sstream>
using namespace std;

template<class out_type,class in_value>
out_type convert(const in_value & t) 
{
	stringstream str;
	str<<t;
	out_type result;
	str>>result;
	return result;
}

template<class out_type,class in_value>
out_type convert(const in_value & t,bool bISWSring) //转wchar,wstring要用到这个
{
	wstringstream str;
	str<<t;
	out_type result;
	str>>result;
	return result;
}

int main()
{
	double d;
	string str1;
	string s="-12.34";

	d=convert<double>(s);
	cout<<d<<endl;

	str1=convert<string>(9000.0);
	cout<<str1<<endl;

	int c;
	c=convert<int>(s);
	cout<<c<<endl;

 	wstring str3;
 	str3=convert<wstring>(5,1);  
	wcout<<str3<<endl;

	return 0;
}





  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值