简体   繁体   English

如何使用Java设置SWIGTYPE的值,例如SWIGTYPE_p_LPCSTR

[英]how can I set a value of SWIGTYPE like SWIGTYPE_p_LPCSTR using java

how can I set a value of SWIGTYPE like SWIGTYPE_p_LPCSTR using java? 如何使用Java设置SWIGTYPE的值(如SWIGTYPE_p_LPCSTR)?

I have generated java interface class using swig from a c++ header file. 我已经使用C ++头文件中的Swig生成了Java接口类。

There is a problem that many C++ types were wrapped into class like this: 有一个问题,许多C ++类型被包装到这样的类中:

public class SWIGTYPE_p_LPCSTR {
    private transient long swigCPtr;

    protected SWIGTYPE_p_LPCSTR(long cPtr, @SuppressWarnings("unused") boolean futureUse) {
    swigCPtr = cPtr;
  }

  protected SWIGTYPE_p_LPCSTR() {
    swigCPtr = 0;
  }

  protected static long getCPtr(SWIGTYPE_p_LPCSTR obj) {
    return (obj == null) ? 0 : obj.swigCPtr;
  }
}

Actually, I just want it to be a simple type like string or int.I guess this is a pointer, but don't know how to use it? 实际上,我只希望它是一个简单的类型,例如字符串或整数。我猜这是一个指针,但不知道如何使用它?

These are opaque classes. 这些是不透明的类。 You don't really use them, they are just passed around. 您并没有真正使用它们,它们只是被传递出去了。 Please see the SWIG 3.0 Documentation 请参阅SWIG 3.0文档

My guess of what's happening here is that your header has a LPCSTR which is a macro possibly defined in another header (probably as char*) and SWIG doesn't know what the macro expands to so instead of using its typemap for strings it wraps the LPCSTR into this proxy class. 我对这里发生的情况的猜测是,您的标头有一个LPCSTR,这是一个可能在另一个标头中定义的宏(可能是char *),而SWIG不知道该宏会扩展为什么,因此它不使用其类型映射表来封装字符串。 LPCSTR进入此代理类。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何在SWIG生成的Java绑定中转换为SWIGTYPE_p_void类型? - How do I convert to type SWIGTYPE_p_void in SWIG generated Java bindings? pjsip 中 SWIGTYPE_p_void 的目的是什么,如何将数据传递给函数参数? - What is the purpose of SWIGTYPE_p_void in pjsip and how can i use to pass data into function parameter? SWIG / java如何向SWIGTYPE *类添加方法 - SWIG/java how to add a method to a SWIGTYPE* class Android JAVA 中的 SWIGTYPE_p_unsigned_char 打印 - SWIGTYPE_p_unsigned_char print in Android JAVA 如何将SWIGTYPE_p…重命名为更友好的名称? - How to rename SWIGTYPE_p… to something more friendly? 如何在主类中使用SWIGTYPE_p_CHAR类? - how to use SWIGTYPE_p_CHAR class in my main class? SWIGTYPE在实现之前声明typedef - SWIGTYPE declaring typedef before the implementation 重命名SWIGTYPE并将代码注入生成的类 - Renaming a SWIGTYPE and injecting code to the generated class 使用 Java API TransmissionWithRecipientArray 对象,如何设置像键值数组(Sparkpost)这样的元素 - Using Java API TransmissionWithRecipientArray object, how can I set an element like a key value array ( Sparkpost ) 如何使用JAVA设置文件的通用属性,例如标题,主题,注释,公司等 - How can I set generic attributes of Files like Title, Subject, Comments, Company..etc using JAVA
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM