#c_sharp
В Delphi, VB есть методы и/или свойства по умолчанию. В C# я нашел только обращение
к элементам массива через свойства по умолчанию:
public class Skyscraper
{
Story[] stories;
public Story this [int index]
{
get { return stories [index]; }
set
{
if (value != null)
stories [index] = value;
}
}
...
}
...
Skyscraper empireState = new Skyscraper (...);
empireState[102] = new Story ("The Top One", ...);
Можно ли объявить произвольный метод (или хотя бы свойство), к которому можно было
бы обращаться так же?
Например, так (код естественно не рабочий, но примерно описывающий, что нужно):
public class Skyscraper
{
Story[] stories;
public default Story {
get { return storie; }
set { storie = value; }
}
...
}
....
Skyscraper empireState = new Skyscraper (...);
empireState = "The Top One";
Ответы
Ответ 1
class Skyscraper { public static implicit operator Skyscraper(string str) { var skyScraper = new Skyscraper(...); skyScraper[102] = new Story (str, ...); return skyScraper; } } ... Skyscraper empireState = new Skyscraper (...); empireState = "The Top One"; implicit operator
Комментариев нет:
Отправить комментарий