【发布时间】:2019-08-26 09:40:35
【问题描述】:
我需要将我 10 年前编写的一些 C++ 代码移植到 C#。我不是 C# 专家,有人告诉我在 C# 中使用结构是不好的做法。
这是原始的 C++ 结构:
typedef struct TacticalLineStruct {
int NumGroups; // The number of groups in the struct
int GroupID[MAX_UNITS]; // which Group the vertex belongs to
int EdgeList[MAX_UNITS * MAX_UNITS][2]; // An array of edges
float EdgeWeight[MAX_UNITS * MAX_UNITS]; // The weight for each edge
int NumBelowThreshold;
POINT GroupCenter[MAX_UNITS]; // The geographical center of each group
int NumEdges;
} TacticalLineStruct;
在 C# 中执行此操作的正确方法是什么?
【问题讨论】:
-
为什么结构不好开始?
-
VTC 太宽泛:这在很大程度上取决于使用情况。
-
使用类编写它,结构通常是不好的做法,因为它们被复制为您作为参数传递的每种类型。
-
@Halhex 如果这是一个问题,很大程度上取决于它的使用。
-
@zetar 对于这个特殊的结构,请。原因见stackoverflow.com/q/3942721/11683。