[英]Clrdump (C++) error LNK2019: unresolved external symbol __imp__RegisterFilter@8 referenced in function _main
[英]error LNK2019: unresolved external symbol referenced in function _main visual c++
有人对如何解决这个问题有任何想法吗? 我在网上查看并更改了Visual C ++的设置,但仍然无法正常工作。
class store
{
public:
int MainMenu();
store();
private:
int main;
};
class customer:store
{
public:
int CustomerMenu();
customer();
private:
int cmenu;
};
class employee:store
{
public:
int EmployeeMenu();
employee();
private:
int emenu;
};
int main()
{
int main;
store a;
customer b;
employee c;
a.MainMenu();
if(main = 1)
{
c.EmployeeMenu();
}
else if(main = 2)
{
b.CustomerMenu();
}
else
{
exit(EXIT_SUCCESS);
}
}
int MainMenu()
{
int main;
cout << "Choose an option: " << endl;
cout << " 1. Administration menu" << endl;
cout << " 2. Customer menu" << endl;
cout << " 3. Exit the program" << endl;
cin >> main;
return main;
}
int CustomerMenu()
{
int cmenu;
cout << " 1. Search Video" << endl;
cout << " 2. View Video Titles" << endl;
cout << " 3. Rent Video" << endl;
cout << " 4. Exit to the Main Menu" << endl;
cout << " 5. Exit the program" << endl;
cin >> cmenu;
return cmenu;
}
int EmployeeMenu()
{
int emenu;
cout << " 1. Store Information menu" << endl;
cout << " 2. Merchandise Information menu" << endl;
cout << " 3. Category Information menu" << endl;
cout << " 4. Customer Information menu" << endl;
cout << " 5. Employee Information menu" << endl;
cout << " 6. Rent a Video" << endl;
cout << " 7. Restock Video" << endl;
cout << " 8. Sales menu" << endl;
cout << " 9. Exit to Main Menu" << endl;
cout << " 10. Exit the program" << endl;
cin >> emenu;
return emenu;
}
store::store()
{
main = 0;
}
customer::customer()
{
cmenu = 0;
}
employee::employee()
{
emenu = 0;
}
它给了我:
Store.obj : error LNK2019: unresolved external symbol "public: int __thiscall customer::CustomerMenu(void)" (?CustomerMenu@customer@@QAEHXZ) referenced in function _main
1>Store.obj : error LNK2019: unresolved external symbol "public: int __thiscall employee::EmployeeMenu(void)" (?EmployeeMenu@employee@@QAEHXZ) referenced in function _main
1>Store.obj : error LNK2019: unresolved external symbol "public: int __thiscall store::MainMenu(void)" (?MainMenu@store@@QAEHXZ) referenced in function _main
您正在将CustomerMenu()
和EmployeeMenu()
为常规功能,而不是类成员。 实施应;
int customer::CustomerMenu()
{
...
int employee::EmployeeMenu()
{
...
if(main = 1)
{ //^^should be ==, same as the one below
c.EmployeeMenu();
}
else if(main = 2)
{
b.CustomerMenu();
}
成员函数应使用范围解析运算符定义:
int CustomerMenu()
应该:
int Customer::ustomerMenu()
次要点:
class employee:store
在这里,您使用了private inheritance
,您确实需要考虑是否需要它。
您的成员函数实现需要正确定义。 例如:
int CustomerMenu()
应该:
int customer::CustomerMenu(void)
依此类推。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.