可以在java中访问c++中创建的指针吗?
Can you access a pointer created in c++, in java
是否可以在java中访问c++中创建的指针?就像我创建一个字符串,并在c++中为变量创建一个指针(给变量一个内存位置)在java中是否有一些命令可以让我获取该指针并查看它?或者我必须将字符串输出到文件,然后执行java文件I/o。
你必须通过JNI将它转换成java可以理解的东西——JNI将有一个方法将你的指针转换为字符串,但是java将复制内存并从中创建一个常规的java字符串——在将内存给java后更改内存不会改变java字符串。
我不认为JNI允许通过直接内存访问进行通信,但我可能错了,我最近没有看过
您应该能够使用JNI: http://java.sun.com/docs/books/jni/您也可以尝试使用SWIG: http://www.swig.org/
但是在你开始之前,你应该评估一下你是否真的需要这样做。你只是想分享数据吗?你可以利用人际关系来做到这一点。在两个程序之间传递tcp消息。有很多共享数据的选项
相关文章:
- 使用基类指针创建对象时,缺少派生类析构函数
- 如何在没有数据拷贝的情况下从指针创建一个Eigen VectorXd对象
- 如何从绝对地址的 C 样式指针创建对C++对象的引用
- 不明白使用双指针 (**) 创建 2d 动态数组
- 如何使用指向动态数组的静态指针创建类?
- Opencl:从 c 样式指针创建 UserEvent
- 从 uint16 指针创建垫子
- 如何为指针创建类型定义
- 从原始指针创建const_iterator会在 macOS 上产生编译错误
- 为什么可以使用指针创建新结构,但不能以相同的方式创建双精度?
- 是否可以在 c++17 中为 c 样式指针或原始指针创建弱指针
- 调用虚拟函数而不通过类类型指针创建任何对象
- 如何使用双指针创建指针数组?
- 使用指针创建类成员
- 如何使用成员函数指针创建模板类
- 从现有指针C 创建一个新对象
- 使用指针创建动态数组的问题
- 如何为指向数组的指针创建内存集?
- 使用共享指针创建的链表数组
- 使用C++ 11 中的模板类型的成员函数指针创建方法参数