Будут ли объекты struct, создаваемые в стеке, утилизированы в конце масштаба? ⇐ C#

Место общения программистов C#
Anonymous
Будут ли объекты struct, создаваемые в стеке, утилизированы в конце масштаба?

Сообщение Anonymous »

Я заинтересован в том, есть ли у C# надежная семантика, подобная RAII. Скажите, что у меня есть приведенный ниже код: < /p>

Код: Выделить всё

using System;

struct X(string name) : IDisposable
{
public void Dispose()
{
Console.WriteLine(name);
}
}

public class Program
{
public static void func()
{
using var x4 = new X("4");
using var x3 = new X("3");
Console.WriteLine("2");
}

public static void Main()
{
Console.WriteLine("1");
func();
Console.WriteLine("5");
}
}
Мой вопрос: в C#, если я создаю структуру в стеке с помощью объявления , то есть не копируется в другом месте, всегда будет ли он утилизируется в конце сферы в объявленном порядке?>

Подробнее здесь: https://stackoverflow.com/questions/796 ... d-of-scope

Вернуться в «C#»