JAVA | C++ | |
接口定义 | interface ClassName { void method(); } | class ClassName { virtual ~ClassName() = default virtual void method() = 0; } |
数组定义 | public int[][] arr = new int[2][2]; | public: 在构造方法里初始化: ClassName() { memset(arr, 0, sizeof(arr)); } |
方法返回数组/对象/对象集 | int[] processImage() | 先定义结果,再传入方法 int[] result; void processImage(int *result); |
方法返回数组 | 同上 | 包装成类或结构体,可以返回 原理是对象copy |
方法返回数据 | 直接方法声明,都能正常返回 | 局部数组,没有new的话,无法返回; 其它对象,如普通类、结构体、vector等都能正常返回 未new的局部数组的指针会在方法结束后丢失 |
数组定义 | int[] arrName; void method(int[] arrName); | int* arrName; void method(int arrName[]);或 void method(int *arrName) |
列表集合 | List | std::vector |
用到android类 | android.graphics.RectF | 新建一个一样的 |
内部类的方法 | 直接写在内部类内部 | 直接写在.h文件中?还是CPP中? 暂时写在.h中 |
返回二维数组 | int[][] getArr(); | int **getArr(){ 这个二维数组只能用指针表示 不能返回a[3][4]这种 } |
定义三维数组成员变量 | int[][][] arr; | int (*arr)[2][2]; arr = new int[2][2][2]; arr[1][1][1] = 7; |
返回抽象类 | 直接返回 | 用指针 static PalmDetection *create() 用的人记得delete |
Android Java代码移植翻译为C++笔记
于 2021-07-21 10:36:31 首次发布