Lütfen aşağıdan yorumda yer alan soruya bakın.Bir temel kurucuya zincirleme yaparken, bir aşırı yüklenmede başlatma kodunu nasıl yeniden kullanabilirim
public class CustomException : Exception
{
private readonly string _customField;
public CustomException(string customField, string message)
: base(message)
{
// What's the best way to reuse the customField initialization code in the
// overloaded constructor? Something like this(customField)
}
public CustomException(string customField)
{
_customField = customField;
}
}
I temel kurucu yeniden ve başlatma kodu en aza, alternatif uygulamaları da dikkate açığım. _customField'ı okumaya devam etmek isterim, eğer ayrı bir başlatma yöntemi çıkarsam mümkün olmaz.
Derleme hatası: Salt okunur bir alan atanamaz (bir yapıcı veya değişken başlatıcı dışında). Sorumumda da belirtildiği gibi, alanı düzenli olarak tutmak istiyorum. –
@ZaidMasud Hayır, derleme hatası yok. 'Init' içinde' _customField', alana atıfta bulunan, ancak alanın kendisine ait olmayan bir 'out' parametresidir. – hvd
Ahh ... şimdi düzenle bakın. Parametreyi hem dışarı hem de dışarıda değil olarak görmek için ilginç sözdizimi. Bunu test etmek gerekiyor. –