मुझे सभी प्रोग्रामिंग भाषाओं के बारे में पता नहीं है, लेकिन यह स्पष्ट है कि आमतौर पर एक विधि को ओवरलोडिंग पर ध्यान देने की संभावना है जो इसके रिटर्न प्रकार (इसके तर्क को समान संख्या और प्रकार मानती है) समर्थित नहीं है।
मेरा मतलब कुछ इस तरह है:
int method1 (int num)
{
}
long method1 (int num)
{
}
ऐसा नहीं है कि यह प्रोग्रामिंग के लिए एक बड़ा मुद्दा है, लेकिन कुछ अवसरों पर मैंने इसका स्वागत किया है।
स्पष्ट रूप से उन भाषाओं के लिए कोई रास्ता नहीं होगा कि वे इस बात का समर्थन किए बिना कि किस विधि को कहा जा सकता है, लेकिन इसके लिए वाक्यविन्यास कुछ सरल हो सकता है जैसे कि [int] method1 (संख्या) या [long] method1 (संख्या) इस तरह से संकलक को पता चल जाएगा कि वह कौन सा होगा जिसे बुलाया जाएगा।
मुझे नहीं पता कि कंपाइलर कैसे काम करते हैं लेकिन ऐसा करना मुश्किल नहीं लगता है, इसलिए मुझे आश्चर्य है कि ऐसा कुछ क्यों नहीं किया जाता है जो आमतौर पर लागू नहीं होता है।
किन कारणों से ऐसा कुछ है जो समर्थित नहीं है?
Foo
औरBar
।