struct SomeStruct
{
public int Num { get; set; }
}
class Program
{
static Action action;
static void Foo()
{
SomeStruct someStruct = new SomeStruct { Num = 5 };
action =() => Console.WriteLine(someStruct.Num);
}
static void Main()
{
Foo();
action.Invoke();
}
}
- Czy kopia jakiegośStruktu jest tworzona po utworzeniu lambda?
- Czy kopia jakiegośStruktu jest tworzona po powrocie Foo?
- Czy mogę sprawdzić, czy kopiowanie nie występuje? W C++ implementowałbym konstruktora kopiowania i drukowałam z niego.
Cytaty z normy zostaną docenione. Wszelkie odpowiednie artykuły online.Czy podczas przechwytywania wartości typu do lambda wykonywane jest kopiowanie?
Jedynym problemem jest to, że nie możesz utworzyć konstruktora bez parametrów dla struktury. – Rory
Opps, przepraszam za to – albertein