自学mfc对话框编程不久,求教大神们一个问题
mfc吧
全部回复
仅看楼主
level 1
占靖滢0gA 楼主
对话框数目比较多,我自己写了一个头文件foodlist.h,里面定义了两个类,那么在其他对话框用到这个类的时候就得在该文件添加#include"foodlist.h"。问题是在一个对话框文件中添加这一头文件不会出现问题,在多个对话框文件同时添加我写的这个头文件以后,程序就无法运行了。求教大神,下楼附上编译时的问题。
2016年09月12日 17点09分 1
level 1
占靖滢0gA 楼主
FoodDlg.obj : error LNK2005: "public: __thiscall CFood::CFood(void)" (??0CFood@@QAE@XZ) already defined in CustomerDlg.obj
FoodDlg.obj : error LNK2005: "public: __thiscall CFood::CFood(class CString,int,int,int,class CString)" (??0CFood@@QAE@VCString@@HHH0@Z) already defined in CustomerDlg.obj
FoodDlg.obj : error LNK2005: "public: __thiscall CFoodList::CFoodList(void)" (??0CFoodList@@QAE@XZ) already defined in CustomerDlg.obj
FoodDlg.obj : error LNK2005: "public: void __thiscall CFoodList::AddNode(class CString,int,int,int,class CString)" (?AddNode@CFoodList@@QAEXVCString@@HHH0@Z) already defined in CustomerDlg.obj
FoodDlg.obj : error LNK2005: "public: void __thiscall CFoodList::DeleteNode(class CFood *)" (?DeleteNode@CFoodList@@QAEXPAVCFood@@@Z) already defined in CustomerDlg.obj
FoodDlg.obj : error LNK2005: "public: void __thiscall CFoodList::ChangeState(class CFood *)" (?ChangeState@CFoodList@@QAEXPAVCFood@@@Z) already defined in CustomerDlg.obj
FoodDlg.obj : error LNK2005: "public: void __thiscall CFoodList::ChangeNode(class CFood *,class CString,int)" (?ChangeNode@CFoodList@@QAEXPAVCFood@@VCString@@H@Z) already defined in CustomerDlg.obj
FoodDlg.obj : error LNK2005: "public: class CFood * __thiscall CFoodList::FindNode(class CString)" (?FindNode@CFoodList@@QAEPAVCFood@@VCString@@@Z) already defined in CustomerDlg.obj
FoodDlg.obj : error LNK2005: "public: void __thiscall CFoodList::LoadFromFile(char *)" (?LoadFromFile@CFoodList@@QAEXPAD@Z) already defined in CustomerDlg.obj
FoodDlg.obj : error LNK2005: "public: void __thiscall CFoodList::ReleaseList(void)" (?ReleaseList@CFoodList@@QAEXXZ) already defined in CustomerDlg.obj
FoodDlg.obj : error LNK2005: "public: void __thiscall CFoodList::SaveToFile(char *)" (?SaveToFile@CFoodList@@QAEXPAD@Z) already defined in CustomerDlg.obj
FoodDlg.obj : error LNK2005: "class CFoodList m_List" (?m_List@@3VCFoodList@@A) already defined in CustomerDlg.obj
Debug/外卖哦.exe : fatal error LNK1169: one or more multiply defined symbols found
2016年09月12日 17点09分 2
level 1
占靖滢0gA 楼主
显示就一个错误,但是这么长,而且我试了很多次,原因似乎就是我把自己编写的头文件添加到多个对话框文件造成的,真的不会解决了,大家教教我吧。
2016年09月12日 17点09分 3
level 1
占靖滢0gA 楼主
对了,我感觉是不是我类成员函数也放在了头文件的缘故啊?
2016年09月13日 08点09分 4
level 2
already defined in CustomerDlg.obj
是不是重复定义了?你在你的头文件最前面加上#pragma once
2016年09月13日 09点09分 5
好的,等我晚上试试,谢谢啊
2016年09月13日 10点09分
1