Hej följande kod funkar inte för mig: Du skriver din strukt: Hej!!Varför inte en array i en struct
<code>
struct minStruct
{
public int[] nyArray = new int[2];
}
</code>
Jag få detta felmeddelandet när jag kör koden.
***cannot have instance field initializers in structs***
Jag förstår ju så långt att man inte kan initiera nyArray i structen men hur ska jag då kunna angen hur stor den ska vara?
Funkar detta?
<code>
struct minStruct
{
public int[2] nyArray;
}
</code>
Eller ska jag lägga den utanför min struct och hur blir syntaxen då?
MVH Henrik LSv: Varför inte en array i en struct
<code>
struct minStruct
{
public int[] nyArray;
}
</code>
För att komma åt den skriver du:
<code>
minStruct s = new minStruct();
s.nyArray = new int[2];
</code>
/Fredrik NSv: Varför inte en array i en struct
<code>
struct minStruct
{
public int[2] nyArray;
}
</code>
Fungerar i C++.
För kännedom om du inte redan vet, så är allt "by default" publikt i structar.
Som sagt detta gäller C++ men jag tror inte dom har ändrat det i C#.
(Kan inget om C# syntax, men misstänker att man behållt det mesta från C++).
Kanske har jag fel.
I C++ avslutar man med ett semikolon direkt efter sista måsvingen, behöver man inte det i C#?
/Håkan