//在程序運行的時候經常需要顯示調試信息,標準c中經常使用
//printf和spritf,還有MFC中的TRACE函數,
//都是要自己寫格式字符串,特別是
//sprintf還要自己建緩沖區等,因此可以用標準c++的
//stringstream 和模板來構建無需格式字符串的函數,
//并且可以自行進行擴充的
#include <sstream>
template <class a>
std::string make_str(a pa)
{
std::string ret;
stringstream ls;
ls << pa << endl;
ret = ls.str();
return ret;
}
template <class a, class b>
std::string make_str(a pa, b pb)
{
std::string ret;
stringstream ls;
ls << pa << " " << pb << endl;
ret = ls.str();
return ret;
}
template <class a, class b,class c>
std::string make_str(a pa, b pb,c pc)
{
std::string ret;
stringstream ls;
ls << pa << " " << pb << " " << pc << endl;
ret = ls.str();
return ret;
}
//可以按需要擴充
//用起來可以這樣
cout << make_str("當前記數", 100).c_str();