error C2894: templates cannot be declared to have 'C' linkage

方法:QTSS.hOSHeader.hws2tcpip.hwspiapi.h
在QTSS.h中,使用了extern "C" 来包含头文件,结果造成这个错误。template只在c++中存在。 解决方法是注释掉QTSS.h 中的extern "C" { 和 }

  在StreamingServer工程中,QTSSRTSPProtocol.h中也有extern "c" {…OSHeader.h…},同样去掉extern部分

 


 
#ifdef __cplusplus
extern "C"
{
 
#ifndef __cplusplus
}
#endif
#endif /* __cplusplus */

 

 

2、#ifndef __cplusplus
/* to fool automatic indention engines */
{
 
#endif
}
#endif

 

-------》

 
#ifdef __cplusplus
//extern "C"
//{
 
#ifndef __cplusplus
//}
#endif
#endif /* __cplusplus */

 

 

2、#ifndef __cplusplus
/* to fool automatic indention engines */
//{
 
#endif
//}
#endif

你可能感兴趣的:(c,templates)