यदि मैं एक स्ट्रिंग को संशोधित नहीं कर रहा हूं तो पहला विकल्प बेहतर है या दोनों ही हैं- (मैं सिर्फ स्ट्रिंग के माध्यम से पुनरावृत्ति करना चाहता हूं, लेकिन चूंकि स्ट्रिंग आकार बड़ा है, इसलिए मैं स्थानीय प्रतिलिपि बनाना नहीं चाहता ।)स्ट्रिंग?
int getString(string& str1) {
//code
}
int getString (string str1) {
//code
}
और अगर मैं स्ट्रिंग को बदलने पर योजना है, तो इन दोनों के बीच कोई अंतर है? क्या ऐसा इसलिए है क्योंकि तार C++ में अपरिवर्तनीय हैं?
स्ट्रिंग्स सी ++ में अपरिवर्तनीय नहीं हैं। यदि आपको इसे संशोधित करने की आवश्यकता नहीं है, तो बस कॉन्स्ट संदर्भ द्वारा पास करें। – chris