今天写代码的时候犯了一个很傻B的错误,将inline函数的声明和定义分别放到了头文件和源文件里了。
结果导致link一直出错,说找不到函数。
后来一查,发现inline函数的定义如果想给其它地方用,就必须把定义放在头文件里,或者在每个用到的地方再定义一次。
因为inline函数只是在编译时进行扩展,如果将定义放到cpp文件里,其它地方将找不到inline函数的定义。它不会像其它函数那样会link过去。
原以为这是symbian c++的特性,后来才知道是通用的,看来还是基础不够扎实!
结果导致link一直出错,说找不到函数。
后来一查,发现inline函数的定义如果想给其它地方用,就必须把定义放在头文件里,或者在每个用到的地方再定义一次。
因为inline函数只是在编译时进行扩展,如果将定义放到cpp文件里,其它地方将找不到inline函数的定义。它不会像其它函数那样会link过去。
原以为这是symbian c++的特性,后来才知道是通用的,看来还是基础不够扎实!