VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 810|回复: 1

[求助] VC的文件include问题 error LNK2005: "public

[复制链接]
37_avatar_middle
在线会员 发表于 2016-5-5 13:55:49 | 显示全部楼层 |阅读模式
3驿站币
我的一个程序,F5运行时出错,希望高手指点。
建了一个project,2个cpp文件
============================================
一个test1.cpp 里面是main 函数:
#include "class_define.cpp"


void main()
{
       
        Myclass M(1, 2, 3);
        M.GetSum();
        Myclass N(2, 4, 6);
        N.GetSum();
        M.GetSum();
        system("pause");
       
}
一个class_define.cpp 文件定义了一个类:
#include <iostream>
using namespace std;

class Myclass
{
public:
        Myclass(int a, int b, int c); //初始列表初始化构造函数
        void GetSum();
private:
        int a, b, c;
        static int SUM;//声明静态数据成员

};

int Myclass::SUM = 0;//定义初始化静态数据成员
Myclass::Myclass(int a, int b, int c) :a(a), b(b), c(c)
{
        SUM += a + b + c;

}

void Myclass::GetSum()
{
        cout << "SUM=" << SUM << endl;
}

==========================================
运行时候错误
1>------ 已启动生成: 项目: test_first, 配置: Debug Win32 ------
1>test1.obj : error LNK2005: "public: __thiscall Myclass::Myclass(int,int,int)" (??0Myclass@@QAE@HHH@Z) 已经在 class_define.obj 中定义
1>test1.obj : error LNK2005: "public: void __thiscall Myclass::GetSum(void)" (?GetSum@Myclass@@QAEXXZ) 已经在 class_define.obj 中定义
1>test1.obj : error LNK2005: "private: static int Myclass::SUM" (?SUM@Myclass@@0HA) 已经在 class_define.obj 中定义
1>D:\userdata\qiuyzhan\Desktop\Coding\cplus_project\test_first\Debug\test_first.exe : fatal error LNK1169: 找到一个或多个多重定义的符号
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========

最佳答案

查看完整内容

亲~cpp文件是不能被 include 的,class_define 应该分成两个文件,class_define.h 和 class_define.cpp,类的声明放到头文件里面,类的定义实现放到cpp里面就可以了




上一篇:vc2013 局域网聊天源代码求修改
下一篇:vc调用迅雷下载
51_avatar_middle
online_admins 发表于 2016-5-5 13:55:50 | 显示全部楼层
亲~cpp文件是不能被 include 的,class_define 应该分成两个文件,class_define.h 和 class_define.cpp,类的声明放到头文件里面,类的定义实现放到cpp里面就可以了
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号tongdun|网站地图wx_jqr

GMT+8, 2019-5-20 09:50

Powered by Discuz! X3.4

© 2009-2019 cctry.com

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