我试图将一个void *指针(或任何指针)保存到一个tcl对象中,以便稍后可以检索它。我看到SWIG将它转换为一个具有某种编码的字符串,然后对其进行解码。但为了使其更有效率,我想直接从tcl obj中获取指针。像Tcl_GetPointerFromObj()。无论如何去做?我是否需要深入研究Tcl_Obj结构并做一些肮脏的工作?如何将一个void *指针包装成一个TCL对象
1
A
回答
3
我建议您阅读this page on the Tcler's Wiki这是对的话题。
0
您可以使用Tcl的API:Tcl_GetWideIntFromObj()
,但我认为存储Tcl的指针是朝着疯狂的第一步....
1
您可以使用Tcl_RegisterObjType来创建一个新的Tcl对象类型,它包含一个void指针。这允许你扩展Tcl,以便Tcl_ObjType可以用来存储(在你的情况下)void *并且能够写Tcl_GetPointerfromObj。
相关问题
- 1. 如何将一个void指针转换为一个int指针,然后在其中存储一个int?
- 2. 将一个void指针施放到一个任意类型的指针上
- 3. 如果我有一个void指针,我该如何将一个int放入它?
- 4. 如何使用鼠标指针在tcl/tk上突出显示一个对象?
- 5. 包含另一个对象指针向量的对象
- 6. C++如何删除一个默认的对象成员,这是一个指针
- 7. 返回一个Void对象
- 8. 将可释放对象包装成智能指针
- 9. 指向一个对象的成员函数的指针
- 10. 成员函数指针指向另一个对象的方法
- 11. 存储一个指向对象成员变量的指针
- 12. 如何将一个抽象类变成一个单例对象?
- 13. 指针tho另一个对象
- 14. JSON对象返回一个空指针
- 15. 如何创建一个指向对象的指针
- 16. 从一个void函数到另一个使用指针的值?
- 17. 操作>>对于一个char指针包装
- 18. 如何在C#中声明一个void指针?
- 19. 如何指定另一个对象来指向单个对象?
- 20. 如何将void(__thiscall MyClass :: *)(void *)转换为void(__cdecl *)(void *)指针
- 21. 如何更新对象内部的JavaScript指针以指向另一个对象?
- 22. 包括从指针对象,它是一个数组
- 23. 将一个void指针投射到一个结构并初始化它
- 24. 追加两个void *指针
- 25. 类指针作为另一个对象的数据成员
- 26. 的std ::一个成员函数绑定到对象指针
- 27. 获取指针或引用另一个对象的成员
- 28. 铸造指针对象为void *在C++
- 29. 如何将一系列的li包装成一个div?
- 30. 用代理包装一个对象
使用大整数似乎太危险了,我不会冒险...我想兼具灵活性和速度,所以这是唯一的方法。 – CyberSnoopy 2010-10-07 20:49:18