当出现这个状况的时候, 可能会引发重定义的错误。
一个可能的场景是这样的: 有一个项目A, 有一个项目B, 项目B依赖项目的A的头文件,且两个项目都由同一个人开发。
现在项目B是在项目A内部的, 且项目B使用的是相对路径引用的项目A的头文件。
这时,就需要把项目B里面的所有引用位置都纠正了,否则就可能出现重定义的情况。 (这里只讨论使用 #param once 的情况,使用宏定义的方式应该不会出现这样的情况。注意: 不指定异常类型的话, 是可以抛出任何类型的异常的!
除此之外, 在定义函数指针的时候, 这个声明也会带来一些问题。