一般都会碰到这样的一个问题,A模块需要返回一系列的object或者message,这样一般有两种处理方式:

1,枚举callback

typedef (*callback_type)(obj_type* value);
bool getobjects(callback_type callback_func)
{
for(int i=0;i<COUNT;i++)
{
callback_func(&g_objects[i])
}
return true;
}

2,返回列表:

bool getobjects(int& count,obj_type** valuelist)
{
if(-1 == count)
{
count = COUNT;
return true;
}
if(!valuelist)
{
return false;
} for(int i=0;i<COUNT;i++)
{
valuelist[i] = g_objects[i];
}
return true;
}

那种更好呢 ?

windows的api一般都是用的枚举形势 ,如enumwindow等。

最新文章

  1. C++ 各种基本类型间的转换
  2. C语言的基本输入与输出函数
  3. js兼容方法:获取当前样式|计算后样式 getStyle
  4. ActiveMQ的使用笔记(基本实现原理)
  5. NGUI ScrollView总结
  6. JS高程读书笔记-第一、二章-内附在线思维导图和quizlet卡片
  7. Gridview数据导出到ExcelWord 防止出现乱码
  8. 微软在线测试题String reorder
  9. Glide的加载图片的帮助类,用来把图片圆角或者改成圆形图片
  10. JAVA之Exchanger
  11. ps中图层混合模式算法公式
  12. 文件系统与linux相关知识点
  13. Windows10下通过anaconda安装tensorflow
  14. 基于web的网上书城系统开发-----需求分析
  15. 云计算基础 (redhat7介绍及相关配置)
  16. 微信公众号开发,weUi组件,问题总结
  17. python(leetcode)-1.两数之和
  18. HANA Database SR Basis Setting
  19. eclipse文本编码格式修改为UTF-8
  20. The Info-Button Standard: Bring Meaningful Use To the Patient

热门文章

  1. GNURADIO简单运用
  2. 使用curl向Solr导入json文件(Windows、Linux均可)
  3. 爪哇国新游记之二十九----访问URL获取输入流
  4. 应用程序池和应用程序域的区别(Difference between application pool and application domain)
  5. web 前端 常见操作 将时间戳转成日期格式 字符串截取 使用mui制作选项卡
  6. 读写锁pthread_rwlock_t的使用(转)
  7. LoadRunner中对图表的分析说明
  8. &lt;转&gt;sock代理服务原理(TCP穿透)
  9. web常见几种处理图标方法 【转】
  10. Spark调研笔记第6篇 - Spark编程实战FAQ