C# struct value (string) ändern

10/05/2015 22:01 Nanoxx™#1
Hey,

Ich möchte einen string in einem struct ändern... aber es passiert leider nichts (kein fehler, keine änderung)

PHP Code:
private List<MyStructTestList= new List<MyStruct>();

 public 
struct MyStruct
{
    public 
string Name;
}


 public 
void Main()
{
   
MyStruct User = new MyStruct();
   
User.Name "Nanoxx";
   
TestList.Add(User);

   
Thread thread = new Thread(delegate() { Test(User); });
    
thread.Start();
}

public 
void Test(MyStruct _USER)
{
_USER.Name "AndererName";
Console.WriteLine(_USER.Name); // Console gibt noch Nanoxx aus!!!!

10/05/2015 22:29 qqdev#2
Also bei mir gibt er "AndererName" aus. Gruß
10/05/2015 22:36 Nanoxx™#3
Quote:
Originally Posted by qqdev View Post
Also bei mir gibt er "AndererName" aus. Gruß
Habe nochmal was geändert... habe eine Zeile vergessen :)
10/05/2015 23:33 tolio#4
bei mir kommt das gewünscht ergebnis raus
[Only registered and activated users can see links. Click Here To Register...]
10/06/2015 14:24 qqdev#5
Vielleicht zeigst du uns einfach konkret den Code, welcher Probleme macht?
10/06/2015 14:56 warfley#6
Funktioniert das mit Call by Value überhaupt?

Ich kenn mich mit C# nicht so sehr aus, aber das müsste doch eigentlich eine konstante sein (zumindest ist das so in vielen Programmiersprachen)
10/07/2015 21:39 Serraniel#7
Ja, aber Strings können kopiert werden.
Was aufgrund des Structs nicht gehen dürfte, wäre das Struct an die zweite Funktion zu übergeben, dort zu ändern und in der ersten Funktion wieder zu ändern (das Threading mal rausgenommen sowieso dabei) [Only registered and activated users can see links. Click Here To Register...]