喜欢用 inline ,项目文件很多,inline 函数也很多,大部分集中存放到一个头文件来共享,但偶然想用一个小功能,随手在临时要用的文件里写个inline 函数,重载也没关系,重复也没关系…
问题就在这里,至少VC6是允许重复定义inline函数的…你以为现在会调用此处定义的inline 函数,其实调用的是编译器第一次遇见的inline函数(同名,同参数形式)——结果因两个函数内部语句不等效而蒙圈却全然不知为什么。
喜欢用 inline ,项目文件很多,inline 函数也很多,大部分集中存放到一个头文件来共享,但偶然想用一个小功能,随手在临时要用的文件里写个inline 函数,重载也没关系,重复也没关系…
问题就在这里,至少VC6是允许重复定义inline函数的…你以为现在会调用此处定义的inline 函数,其实调用的是编译器第一次遇见的inline函数(同名,同参数形式)——结果因两个函数内部语句不等效而蒙圈却全然不知为什么。