鱼C论坛

 找回密码
 立即注册
查看: 2906|回复: 6

VC2013 该符号在函数 _main 中被引用错误问题

[复制链接]
发表于 2016-4-30 23:39:45 | 显示全部楼层 |阅读模式
10鱼币
//employ.h
#pragma once
#include<iostream>
#include<string>

using namespace std;
namespace My_Code
{
  class employ
        {
        public:
                employ();
                virtual ~employ();
                employ & SetFirstName(const string Fir_Name);
                employ & SetLastLastName(const string Last_Name);
                employ & SetNumberID(const long Number);
                virtual employ & SetSalary(const long Salary);
                const string & GetFistName() const;
                const string & GetLastName() const;
                const long & GetNumberID() const;
                virtual const long & GetSalary() const;
                virtual void Show_Employy_lnfo();
        private:
                employ(const employ&);
                employ & operator=(const employ&);
                string m_firstname;
                string m_lastname;
                long m_NumberID;
                long m_Salary;
        };
}
//test.cpp
#include"employ.h"
using namespace My_Code;

int main()
{
        employ m_employ;
        string str1, str2;
        long num, salary;
        cout << "请输入员工名字:\n";
        cin >> str1 >> str2;
        cout << "请输入员工工号:\n";
        cin >> num;
        cout << "请输入员工工资:\n";
        cin >> salary;
        m_employ.SetFirstName(str1).SetLastLastName(str2).SetNumberID(num)
                .SetSalary(salary).Show_Employy_lnfo();
        return 0;
}

1>test.obj : error LNK2019: 无法解析的外部符号 "public: __thiscall My_Code::employ::employ(void)" (??0employ@My_Code@@QAE@XZ),该符号在函数 _main 中被引用
1>test.obj : error LNK2019: 无法解析的外部符号 "public: virtual __thiscall My_Code::employ::~employ(void)" (??1employ@My_Code@@UAE@XZ),该符号在函数 _main 中被引用
1>test.obj : error LNK2019: 无法解析的外部符号 "public: class My_Code::employ & __thiscall My_Code::employ::SetFirstName(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?SetFirstName@employ@My_Code@@QAEAAV12@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z),该符号在函数 _main 中被引用
1>test.obj : error LNK2019: 无法解析的外部符号 "public: class My_Code::employ & __thiscall My_Code::employ::SetLastLastName(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (?SetLastLastName@employ@My_Code@@QAEAAV12@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z),该符号在函数 _main 中被引用
1>test.obj : error LNK2019: 无法解析的外部符号 "public: class My_Code::employ & __thiscall My_Code::employ::SetNumberID(long)" (?SetNumberID@employ@My_Code@@QAEAAV12@J@Z),该符号在函数 _main 中被引用
1>E:\代码\练习\录入系统\Debug\录入系统.exe : fatal error LNK1120: 5 个无法解析的外部命令

这是错误提示  我想问问这是哪里错了 找了好久都不知道哪里错

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-5-3 16:08:29 | 显示全部楼层
main函数中调用了employee的成员函数,但是这些函数并没有定义...
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2016-5-7 20:44:45 | 显示全部楼层
LeoChou 发表于 2016-5-3 16:08
main函数中调用了employee的成员函数,但是这些函数并没有定义...

那我想问问 要怎么去定义?  代码要怎么去修改
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-5-9 01:31:43 | 显示全部楼层
在你第一个文件中定义啊,你这个只是声明了,但是没有定义!!!!比如你在你的构造函数后面声明处把分号换成{}就是定义和声明放在一起了!!!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2016-6-5 10:58:03 | 显示全部楼层
清音阁阁主 发表于 2016-5-9 01:31
在你第一个文件中定义啊,你这个只是声明了,但是没有定义!!!!比如你在你的构造函数后面声明处把分号换 ...

要怎么定义  我也是按教程里面写的呀 你能具体说一下吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-6-5 22:44:57 | 显示全部楼层
这个问题你可以先留着,接着看下面的教程,等你看到employ.cpp的时候就可以再继续写这个程序了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-6-19 01:53:44 | 显示全部楼层
943566987 发表于 2016-6-5 10:58
要怎么定义  我也是按教程里面写的呀 你能具体说一下吗

你确定按教程,我不是说了嘛,你把“;”换成“{}”,再编译一次
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-6-2 11:06

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表