मैं निम्नलिखित कोड के लिए हस्ताक्षर किए चेतावनी मिलती है/अहस्ताक्षरित बेमेल:का उपयोग ऑटो ++
auto n = a.size();
for (auto i = 0; i < n; i++) {
}
समस्या यह है कि i
करने के लिए 0 देकर इसकी int
बजाय size_t
हो जाता है।
size_t n = a.size();
for (size_t i = 0; i < n; i++) {
}
या इस: तो क्या बेहतर है
auto n = a.size();
for (size_t i = 0; i < n; i++) {
}
या हो सकता है आप एक बेहतर समाधान है? मुझे पहले एक और पसंद है क्योंकि यह थोड़ा अधिक संगत है, यह उसी उद्देश्य के लिए size_t
और auto
दोनों के बजाय size_t
का उपयोग करता है।
for (const auto& i : a)
{
}
यहाँ, i
कंटेनर a
का एक तत्व के लिए एक const
संदर्भ है:
'ऑटो i = 0u' के बारे में कैसे? – jalf
यदि आपको अपने लूप में इंडेक्स की आवश्यकता है तो int का उपयोग करने के बारे में कैसे? एक हस्ताक्षरित सूचकांक का उपयोग करना बहुत जल्दी हो सकता है। जैसे 'i' n - 1' गलत है जब' i' और 'n' हस्ताक्षरित हैं। –