java - 实现移植到 Java 的指针和数组

标签 java c++ pointers

我正在将一些 C++ 代码移植到使用一些重指针算法的 Java。 我的问题如下:

有一个这样构建的结构,我已将其实现为一个类:

在原始的 C/C++ 代码中,我有以下分配,

struct mst_edge
{
    int u, v;
    double w;
}

mst_edge * tree_edges = new mst_edge[size];

int node_l = tree_edges->u;
int node_r = tree_edges->v;

如何将此代码转换为 java?第二个 block 将 mst_edge 声明为 C/C++ 动态数组。但在第三个代码块中,它使用 tree_edges 作为直接指针。

考虑到内存和引用由 Java 直接处理,Java 的等价物是什么?

最佳答案

Java 等价物是

mst_edge[] tree_edges = new mst_edge[size];

int node_l = tree_edges[0].u;
int node_r = tree_edges[0].v;

关于java - 实现移植到 Java 的指针和数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15536421/

相关文章:

java - 如何创建将添加新属性源的自定义注释

c++ - 测试 CComPtr 在 COM 中是否为空

c++ - Windows 和 Linux 的 C++ 中 64 位整数的跨平台定义

c++ - 在 C++ 中将 wchar 转换为 char

c++ - 返回 char** 或传递 char* 数组

java - (JAVA) 使用命令提示符从多个 .class 文件创建 .jar 文件

java - 如何避免溢出变量的乘法?

c++ - 当强制转换的指针具有增量运算符时会发生什么?

java - 如何从类对象中获取(通用)类型

c++ - 如何将 vector 作为函数参数传递给指针