[英]C#: How to translate nested structures from C to C#?
我有一個用C編寫的程序,其中包含一些數組的嵌套結構,如下所示:
typedef struct
{
int s1var1[s1max1],
float s1var2[s1max2];
}struct1;
typedef struct
{
int s2var1[s2max1];
struct1 s2var2[s2max2];
*s2var2_ptr;
}struct2;
並且我已經用C#編寫了如下代碼:
class Class1
{
public int[] s1var1 = new int[s1max1];
public float[] s1var2 = new float[s1max2];
}
class Class2
{
public int[] s2var1 = new int[s2max1];
public Class1[] s2var2 = new Class1[s2max2];
}
我的翻譯是真的嗎? 這個翻譯有什么問題?
謝謝你的時間。
public struct struct1
{
public int[] s1var1;
public float[] s1var2;
}
public struct struct2
{
public int[] s2var1;
public struct1[] s2var2;
}
public static void Main()
{
struct1 str;
str.s1var1 = new int[10];
str.s1var2= new float[10];
//or
struct1 str1 = new struct1();
str1.s1var1 = new int[10];
str1.s1var2= new float[10];
////
struct2 str2;
str2.s2var1 = new int[10];
str2.s2var2 = new struct1[10];
}
struct類型是一種值類型,通常用於封裝一小組相關變量,例如矩形的坐標或清單中項目的特征。
創建結構時,為其分配變量的變量將保存該結構的實際數據。 將結構分配給新變量后,將對其進行復制。 因此,新變量和原始變量包含相同數據的兩個單獨副本。 對一個副本所做的更改不會影響另一副本。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.