我用的时候,使用的是:
定义: const uint16_t getfun(void){int a = 1; return a };
使用: uint16_t num = getfun();
这时,会告诉你,类型限定符const,在函数返回时被忽视了。 因为你返回的是一个局部变量的值. 没有使用引用,也没有使用指针,你使用const其实没有意义的。所以编译器自动给你忽略了。
如果你把Num定义成变量,然后返回它的引用,加const,就有效果,不会报错了。就是这样的。试验也成功了。
警告: 类型限定符在函数返回类型时被忽视, 如果返回const类型, 即会出现这种警告,删除const, 即可;
如: