को पुनर्परिभाषित जब जीसीसी के साथ निम्नलिखित स्रोत कोड संकलन कोई त्रुटि/चेतावनी है:सी ++ 11: टेम्पलेट पैरामीटर डिफ़ॉल्ट तर्क
template< typename T = int > T func();
template< typename T = int > T func();
जब मैं बजना साथ ++ एक ही स्रोत कोड संकलन, मैं निम्नलिखित त्रुटि मिली : जीसीसी 4.7.2, बजना ver:
redeftempparam.cc:2:24: error: template parameter redefines default argument
template< typename T = int > T func();
^
redeftempparam.cc:1:24: note: previous default template argument defined here
template< typename T = int > T func();
^
1 error generated.
कमान
[clang++|g++] -Wall -Werror -std=c++11 redeftempparam.cc
(संस्करण जानकारी संकलित करने के लिए सायन 3.3 (ट्रंक 171722))
मेरा प्रश्न:
परिभाषा इस प्रकार की अनुमति दी है? यदि नहीं: क्या आप मुझे सी ++ मानक में उपयुक्त बिंदु को इंगित कर सकते हैं?
जिसका मतलब है: यह अनुमति नहीं है और बजना ++ सही है। आपका बहुत बहुत धन्यवाद! –