Как уже объясняли другие, destructor
используется для очистки объекта.
В C # 7 появилась новая функция, которую можно назвать deconstructor
:
class Person
{
public string FirstName { get; set; }
public string LastName { get; set; }
public void Deconstruct(out string firstName, out string lastName)
{
firstName = FirstName;
lastName = LastName;
}
}
var person = new Person { FirstName = "John", LastName = "Smith" };
var (localFirstName, localLastName) = person;
Наиболее распространенными именами этой функции являются deconstruct method
или просто deconstruction
, но я нашел по крайней мере один экземпляр в официальном блоге msdn , который называется deconstructor
(выделено мной):
Будет обычным делом иметь конструкторы, а деконструкторы будут «симметричными» таким образом.