मैंने -Wall
और -Wextra
सक्षम के साथ जीसीसी के साथ कुछ कोड संकलित किया।क्या मुझे Wmissing-field-शुरुआतीकरण और C++ 17 में कुल प्रारंभिकता के बारे में चिंतित होना चाहिए?
struct A { A(int) {} };
struct B {};
struct C : A, B {};
int main() {
(void) C{1};
}
main.cpp: In function 'int main()': main.cpp:11:15: warning: missing initializer for member 'C::<anonymous>' [-Wmissing-field-initializers] (void) C{1}; ^
मुझे लगता है कि के बारे में चिंतित होना चाहिए: इस कोड को एक चेतावनी के उत्पादन होता है? क्या यह चेतावनी को आउटपुट करने के लिए जीसीसी में एक बग है? ऐसा लगता है कि मेरे पास प्रारंभ करने के लिए कोई फ़ील्ड नहीं है, और कोई गुम पैरामीटर नहीं है।
ओह ठीक है ... मैं वहां सामान्य कोड से निपट रहा हूं, इसलिए मुझे खाली पैरामीटर जोड़ना मुश्किल होगा :( –
@GuillaumeRacicot क्या यह संभवतया आपको प्रारंभिक उम्मीदवारों की अपेक्षित संख्या जानने में मदद करेगा? इनका उपयोग किया जा सकता है SFINAE। –