पहली और दूसरी लिपि क्यों काम करती है लेकिन अंतिम नहीं? क्या कोई ऐसा तरीका है जिससे मैं सभी 3 को अनुमति दे सकता हूं और यह पता लगा सकता हूं कि क्या यह 1 था, (इंट) 1 या मैं इसमें पास हुआ था? और वास्तव में किसी को अनुमति क्यों दी जाती है, लेकिन अंतिम क्यों? दूसरे की अनुमति दी जा रही है, लेकिन वास्तव में मेरे दिमाग को नहीं उड़ाती है।
संकलित त्रुटि दिखाने के लिए डेमो
using System;
class Program
{
public static void Write(short v) { }
static void Main(string[] args)
{
Write(1);//ok
Write((int)1);//ok
int i=1;
Write(i);//error!?
}
}
(short) i
।