x264中同名的宏和函数

  bs_write1  bs_write  bs_write_ue  bs_write_se  bs_write_te 宏在rdo.c的开头定义rdo.c又被include在analyse.c的开头,功能上:只改变写入数据大小,估计是用来估计rdo中精确cost的. 并且没有被undefine.但是并没有被analyse中或者之中函数用到.

同名静态内联函数在bs.h中定义,文件又被include到common.h中又被无数文件include,要不怎么说是common呢.危险是居然也被analyse include了.于是我们很多错误出在analyse里,将函数视为宏定义去代替他了

 

经过实验,在c++中,宏在本文件和相关文件内有效,在宏定义文件内调用子函数内无效.并且同一文件include几个文件,内部定义同名func和macro不冲突

c至少在被同意文件包含的文件中冲突是有效的,从编译上猜想,在其他文件中应该无所谓

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值