से पहले परिभाषित नहीं किए गए फ़ंक्शन/विधि को परिभाषित करें, मैं अभी तक सी ++ 11 का उपयोग नहीं करता, इसलिए मैंने अपने द्वारा to_string(whatever)
फ़ंक्शंस लिखा। अगर वे अस्तित्व में नहीं हैं तो उन्हें केवल संकलित किया जाना चाहिए। अगर मैं सी ++ 11 पर स्विच करता हूं, तो उन्हें छोड़ दिया जाना चाहिए। मेरे पास ऐसा कुछ है:सी ++
#ifndef to_string
string to_string(int a){
string ret;
stringstream b;
b << a;
b >> ret;
return ret;
}
string to_string(double a){
string ret;
stringstream b;
b << a;
b >> ret;
return ret;
}
#endif
यह स्पष्ट रूप से काम नहीं करता है। क्या ऐसा कुछ संभव है और यदि हां, तो कैसे?
यह काम करता है पूर्व सी ++ 11, http://cpp.sh/86ldr –
@ArnavBorborah खैर देखें, ऐसा नहीं होना चाहिए काम। 'std :: to_string' सी ++ 11 चीज – xinaiz
व्यक्तिगत रूप से मुझे लगता है कि यह एक बहुत ही खराब अभ्यास है, और इस प्रश्न का कोई अच्छा जवाब नहीं है। सी ++ मानक 'to_string' साबित नहीं करता है, लेकिन 'std :: to_string', जो बहुत अलग है। इसका मतलब है कि, यदि आपका मानक इसका समर्थन नहीं करता है तो आप 'std :: to_string' का उपयोग नहीं कर सकते हैं। अब फिर से सोचें - आइए मान लें कि आप पहले से ही C++ 11 का उपयोग करते हैं। अब क्या?यदि आप स्वीकार्य उत्तर से मैक्रो का उपयोग करते हैं, तो क्या आप अपने शेष जीवन के लिए 'std :: to_string' के बजाय इसका उपयोग करेंगे? बहुत, बहुत बुरा विचार। – xinaiz