Bu kod nasıl derlenebilir? Operatör int'deki aşağıdaki kod, MyValue sınıfının özel bir değişkenine erişebilir mi? Niye ya?Statik bir yöntem içinde bir parametrenin özel üyesine erişim?
class Program
{
static void Main(string[] args)
{
Myvalue my = new Myvalue(100);
Console.WriteLine(my + 100);
Console.Read();
}
}
public class Myvalue
{
private int _myvalue;
public Myvalue(int value)
{
_myvalue = value;
}
public static implicit operator int(Myvalue v)
{
return v._myvalue;
}
}
Eğer sınıf statik olurdu, anlayabiliyordum. Ancak nesne parametre tarafından geçirildiği için, neden erişim sağlayıcıya sahip olmayı gerektirmiyor? –
@Daok: Statik yönteminiz sınıfın bir üyesi olduğu için. Bu statik yöntem başka bir yerde olsaydı izin verilmezdi. –
Tamam, hassasiyet için teşekkürler. –