std::string为library type,而int、double为built-in type,两者无法互转,这里使用function template的方式将int转std::string,将double转std:string。
1
/*
2(C) OOMusou 2006 http://oomusou.cnblogs.com
3
4Filename : ArrayToVectorByConstructor.cpp
5Compiler : Visual C++ 8.0
6Description : Demo how to convert any type to string.
7Release : 11/18/2006
8*/
9 #include <iostream>
10 #include <sstream>
11 #include < string>
12
13 template < class T>
14 std:: string ConvertToString(T);
15
16 int main() {
17 std::string s;
18
19 // Convert int to std::string
20 int i = 123;
21 s = ConvertToString(i);
22 std::cout << s << std::endl;
23
24 // Convert double to std::string
25 double d = 123.123;
26 s = ConvertToString(d);
27 std::cout << s << std::endl;
28
29 return 0;
30}
31
32 template < class T>
33 std:: string ConvertToString(T value) {
34 std::stringstream ss;
35 ss << value;
36 return ss.str();
37}
2(C) OOMusou 2006 http://oomusou.cnblogs.com
3
4Filename : ArrayToVectorByConstructor.cpp
5Compiler : Visual C++ 8.0
6Description : Demo how to convert any type to string.
7Release : 11/18/2006
8*/
9 #include <iostream>
10 #include <sstream>
11 #include < string>
12
13 template < class T>
14 std:: string ConvertToString(T);
15
16 int main() {
17 std::string s;
18
19 // Convert int to std::string
20 int i = 123;
21 s = ConvertToString(i);
22 std::cout << s << std::endl;
23
24 // Convert double to std::string
25 double d = 123.123;
26 s = ConvertToString(d);
27 std::cout << s << std::endl;
28
29 return 0;
30}
31
32 template < class T>
33 std:: string ConvertToString(T value) {
34 std::stringstream ss;
35 ss << value;
36 return ss.str();
37}