C++:在C中传递指向模板类的指针

kra*_*lyk 2 c c++ templates wrapper

我正在为我的lib编写一个C包装器API.

我通常像void*在C中那样传递我的C++对象.并且每个对象的公共函数都有自然的访问包装函数.C代码访问本机C++类成员.

昨天,有人在IRC上提到我不应该像C中那样传递指向C++模板类的指针,void*因为它很危险.这是真的?从指针到模板类的指向普通C++类的指针有何不同?

谢谢!

Sti*_*sis 7

这是假的.模板没有重新强制转换普通类不具备的特殊属性.确保你总是使用适当的演员,你会没事的.