C++对Java代码转换的疑问
C++ to Java Code Conversion doubts
我正在将一些代码从c ++转换为Java。有以下疑问-
-
C++ - 静态字符 **GPRS;在 Java 中 - 私有静态 String[] gprs;或私有静态字节[] gprs;
-
C++ - 静态字符 *掩码;在 Java 中 - 私有静态字节掩码;(正确吗?
-
C++ - memset((char *)&rm,'\0',sizeof(DRMK));//这里DRMK是一个结构体。rm 是 DRMK 的对象。所以在java中,我必须创建一个类,在声明变量时,我必须将单个值设置为0。这是对的吗?
-
C++ - memcpy (&wp, (PMSK *)p_msk + (long)(x - 1), sizeof(PMSK));如何在 Java 中镜像这一点。PMSK 是这里的结构体。
在哪里 - 静态 PMSK wp; PMSK *下午; 静态字符 *p_msk;
谢谢
-
private static String[] gprs;
-
private static String;
//你愿意在这里有一个字符串,但我不确定 - 取决于上下文。 - 简单
rm = new DRMK();
- 这取决于PMSK结构的结构。您应该编写一个方法,该方法在语义上执行一些从 String 到对象的数据复制。
C++ - static char **gprs;
取决于 gprs 的使用,但我会说(通过查看代码的其余部分)byte
更合适。一个字节数组。
C++ - static char *mask;
我会使用一个字节而不是一个给定"掩码"名称的字符。
C++ - memset((char *)&rm,' ',sizeof(DRMK));
如其他回答所述...只需要创建一个新的 DRMK 实例。
C++ - memcpy (&wp, (PMSK *)p_msk + (long)(x - 1), sizeof(PMSK));
如果你问我,这是一个按位掩码。wp
的值将是 (x-1) 字节从 p_msk
开始的内存位置的任何值。基本上,它会将大小sizeof(PMSK)
从 p_msk+(x-1) 开始的内存块复制到 wp 中。如何在Java中做到这一点?你猜对了...字节数组。
-
这取决于
gprs
的用途。 没有自动解决方案。 但如果是角色,String[]
似乎更合适。 -
同样,这取决于如何使用
mask
;Byte[]
或String[]
. -
你不需要任何东西。 Java 自动设置所有成员变量为 0、
null
或之前的道德等价物调用构造函数。 -
如果我正确理解代码,您需要提供Java 类的复制构造函数,并调用它。
- 处理小于cpu数据总线的数据类型.(c++转换为机器代码)
- 在混合代码库中将C转换为C++时出现许多包含错误
- 为什么g++在未执行的代码处标记强制转换错误
- 用于将C++代码转换为 Web 程序集的脚本未终止
- 16 位到 10 位转换代码说明
- 以下对二进制转换代码的小数如何工作
- 中缀到后缀表达式转换代码不起作用
- C++中的十进制到十六进制转换代码
- 这个后缀转换 C++ 代码的中缀有什么问题
- 如何优化 YUV 到 RGB 颜色转换代码
- Win32 键转换代码输出不需要的按键
- C++ NV12 到 RGB24 转换代码
- 转换代码以使用矢量
- C++货币转换代码
- 这段c++类型转换代码在做什么?
- 缓慢运行的方向转换代码
- 在c++中转换代码页
- 转换代码从SSE2到SSE4在C
- MATLAB到c++的行转换代码
- 如何编写可转换代码,32位/64位