AudioRecord.obj : error LNK2005: "int (__cdecl* AUDIO_MGR_AddSource)(unsigned long)" (?AUDIO_MGR_AddSource@@3P6AHK@ZA) already defined in AudioConnect.obj
DeviceManager.obj : error LNK2005: "void (__cdecl* AUDIO_MGR_Disconnect)(void)" (?AUDIO_MGR_Disconnect@@3P6AXXZA) already defined in AudioConnect.obj
StdAfx.obj : error LNK2005: "void (__cdecl* AUDIO_MGR_SetPlayCallback)(void *,long (__cdecl*)(void *,unsigned long,unsigned char *,unsigned long))" (?AUDIO_MGR_SetPlayCallback@@3P6AXPAXP6AJ0KPAEK@Z@ZA) already defined in AudioRecord.obj
StdAfx.obj : error LNK2005: "int (__cdecl* AUDIO_MGR_DelSource)(unsigned long)" (?AUDIO_MGR_DelSource@@3P6AHK@ZA) already defined in AudioConnect.obj
StdAfx.obj : error LNK2005: "int (__cdecl* AUDIO_MGR_AddSource)(unsigned long)" (?AUDIO_MGR_AddSource@@3P6AHK@ZA) already defined in AudioConnect.obj
这是什么错误?怎么解决?谢谢!!

解决方案 »

  1.   

    函数方法重定义了,那几个函数在AudioRecord.H里已经定义过了,看看AudioRecord.H里有没有避免重定义的宏声明
      

  2.   

    函数重定义,一般是在class中直接定义,然后在cpp中保留着定义,检查一下
      

  3.   

    加上 #ifndef ---h
         #define ___h
         #end
    或者
    #pragma  once
    如果是类的声明和实现都在.h文件中,请不要在任何其他.h文件中包含该.h文件声明。