c++中void* list 转换成 list<myStruct> 类型。

[复制链接]
查看11 | 回复3 | 2012-8-26 19:24:56 | 显示全部楼层 |阅读模式
形式参数void *mylist 是个无类型的指针,它和list是什么关系?如果实参是 list的话,是没有办法强制转换的,因为传入了list的实例,只有实参是 list*,才可以进行强制转换,转换语句这样写((list*)mylist)->push_back(*nn); 另外,你的list是存储myNameNum的实例,就不必malloc,这样会内存泄漏。完整的代码是int get_myNameNumber( void *mylist, int cols, char **colValue, char **colName){
...
回复

使用道具 举报

千问 | 2012-8-26 19:24:56 | 显示全部楼层
hans_yu回答得不错除了内存操作函数,传参尽量不要用void*,哪怕用T*也好一些。...
回复

使用道具 举报

千问 | 2012-8-26 19:24:56 | 显示全部楼层
(list*)mylist->push( nn );...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行