typedef重复定义的一种解决方法


     与#define不同,typedef没有类似#undef的方法取消定义,如果两个库中同时使用typedef定义了某个类型,便会编译失败。

     一个解决方法是,在包含第二个库时使用#define将重复定义的类型名改掉。

     例如,如果头文件sm_system.h和math.h中均包含"typedef xxxx float_t"语句,那么使用如下的头文件包含方法:

#include "sm_system.h"

#define float_t ms_float_t
#include <math.h>
#undef float_t

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM