अधिभार पर विचार करें:
void foo (int) {std :: cout & lt; & LT; "Foo (int) कहा जाता है। \ N";} void foo (int *) {std :: cout & lt; & lt; "फू (इंट *) कहा जाता है। \ N";} void foo (चार *) {std :: cout & lt; & lt; "फू (चार *) कहा जाता है। \ N";} शून्य foo (bool *) {std :: cout & lt; & lt; "Foo (bool *) कहा जाता है। \ N";}
जबकि
foo (int {});
पहले अधिभार को कॉल करेगा, नया आंत आवंटित किए बिना दूसरे अधिभार को कॉल करने का सबसे साफ तरीका क्या है?
foo (static_cast और lt; int * और gt; (nullptr)) से बेहतर कुछ भी;
क्या मैं यहाँ एक साधारण सिंटैक्स लापता हूँ?
जबकि < Code> foo (int * {}) काम नहीं करता, और foo ((int *) {})
केवल कुछ कंपलर पर काम करता है, foo (int *) 0)
शायद सबसे छोटा, समझने में आसान और काम करने की गारंटी है।
No comments:
Post a Comment