我正忙着把一个用 C + + 完成的旧项目改写成 C # 。
我的任务是重写程序,使它的功能尽可能接近原来的。
在一系列文件处理过程中,编写这个程序的前开发人员创建了一个包含大量字段的结构,这些字段对应于文件必须使用的设置格式,因此所有这些工作都已经为我完成了。
这些字段都是字节数组。然后 C + + 代码使用 memset
将整个结构设置为所有空格字符(0x20
)。一行代码。放松。
这一点非常重要,因为该文件最终使用的实用程序希望文件采用这种格式。我所要做的就是将这个结构改为 C # 中的一个类,但是我找不到一种方法可以轻松地将这些字节数组中的每一个初始化为所有的空格字符。
最后我必须在类构造函数中这样做:
//Initialize all of the variables to spaces.
int index = 0;
foreach (byte b in UserCode)
{
UserCode[index] = 0x20;
index++;
}
这个工作很好,但我相信一定有一个更简单的方法来做到这一点。当构造函数中的数组设置为 UserCode = new byte[6]
时,字节数组将自动初始化为默认的空值。有没有办法让它在声明时变成所有的空格,这样当我调用类的构造函数时,它就像这样被直接初始化了?或者类似 memset
的功能?