1
1
在np的getentrypoints中定义自己的np\u your new函数,现在当np\u新建之后,框架用实例调用np\u your new。当您的回调刚刚被调用时,可以保存该实例。 |
2
2
最好的方法实际上是用一个字段扩展npobject以保存相关的npp实例,并为npclass定义提供allocate/deallocate函数。然后,可以将NP对象强制转换为子类型以访问实际的NPP实例。 我愿意 不是 建议在上面建议的全局级别(np_GetEntryPoints等)执行此操作,因为可能加载了多个插件实例(甚至可能在同一页上),并且您希望确保调用的是正确的实例。不幸的是,似乎有很多示例代码,其中一些随机实例只是保存在一个全局变量中,并尽可能地更新。 作为一个例子,假设C++,您将要扩展NPObject:
然后,您的NPClass定义需要具有分配和解除分配定义:
可以这样实现:
当您需要调用np_invoke时,假设您有npobject*(例如,在obj_invoke内部),您只需向下强制:
|
Community wiki · C中有哪些耗时的操作? 1 年前 |
Community wiki · 将所有处理器电源都投入到任务中 1 年前 |
Community wiki · C++为C添加了什么?[已关闭] 1 年前 |
Community wiki · 打印1到1000,不带循环或条件 1 年前 |