警告:没有以前的声明 - C++

use*_*518 6 c++

我对这个原因感到困惑:

recorders/r5000device.cpp: In function ‘unsigned int r5000_device_tspacket_handler(unsigned char*, int, void*)’:
recorders/r5000device.cpp:34:14: warning: no previous declaration for ‘unsigned int r5000_device_tspacket_handler(unsigned char*, int, void*)’ [-Wmissing-declarations]
 unsigned int r5000_device_tspacket_handler(unsigned char *tspacket, int len, void *callback_data)
          ^
recorders/r5000device.cpp: In function ‘void r5000_msg(char*)’:
recorders/r5000device.cpp:44:6: warning: no previous declaration for ‘void r5000_msg(char*)’ [-Wmissing-declarations]
 void r5000_msg(char * msg)
  ^
Run Code Online (Sandbox Code Playgroud)

egu*_*gur 8

你有编译标志-Wmissing-declarations set.编译器希望查看所有函数的声明(原型 - 通常在标题中).只需添加缺少的标题或在文件顶部声明原型.


Tim*_*rce 0

C++ 中的自由函数需要在头文件中声明以及在 .cpp 文件中定义。 如何在 C++ 中定义全局函数?