| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1171 人关注过本帖
标题:C++程序,编译没有问题,连接时出错,这是怎么回事?
取消只看楼主 加入收藏
碧海苍梧
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2013-10-29
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:13 
C++程序,编译没有问题,连接时出错,这是怎么回事?
Linking...
test.obj : error LNK2001: unresolved external symbol "void __cdecl getVolumn(void)" (?getVolumn@@YAXXZ)
test.obj : error LNK2001: unresolved external symbol "void __cdecl inputVolumn(void)" (?inputVolumn@@YAXXZ)
Debug/我的程序.exe : fatal error LNK1120: 2 unresolved externals
执行 link.exe 时出错.


这是出错的提示信息,哪位高手能帮忙看看这个怎么解决啊,谢谢了啊1
搜索更多相关主题的帖子: 提示信息 
2013-10-29 12:02
碧海苍梧
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2013-10-29
收藏
得分:0 
回复 2楼 peach5460
看不懂啊,我的英文也不好,单个词查出来意思拼到一起不通顺啊
2013-10-29 12:22
碧海苍梧
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2013-10-29
收藏
得分:0 
回复 3楼 nba199044
我的是多文件
Circle.cpp
#include<iostream>
using namespace std;
float Radius;
#define PI 3.14
void InputRadius()
{
    cout<<"请输入圆的半径:";
    cin>>Radius;
}
void GetCircleArea()
{
    cout<<"输出圆的面积:"<<Radius*Radius*PI<<endl;
}

Rect.cpp
#include<iostream>
using namespace std;
float fRectW;
float fRectH;
void InputRectWH()
{
    cout<<"请输入矩形的长:";
    cin>>fRectW;
    cout<<"请输入矩形的宽:";
    cin>>fRectH;
}
void GetRectArea()
{
    cout<<"矩形的面积="<<fRectW*fRectH<<endl;

}

recevalum.cpp
#include<iostream>
using namespace std;
struct rectVolumn
{
    int length;
    int width;
    int height;
    int volumn;
};


void inputVolumn(rectVolumn *rv)
{

    cout<<"请输入长方体的长:";
    cin>>(*rv).length;
    cout<<"请输入长方体的宽:";
    cin>>(*rv).width;
    cout<<"请输入长方体的高:";
    cin>>(*rv).height;

}

void getVolumn(rectVolumn *rv)
{
cout<<"长方体的体积="<<(*rv).length*(*rv).width*(*rv).height<<endl;
}

test.cpp
#include<iostream>
#include"Circle.h"
#include"Rect.h"
#include"rectvalum.h"
using namespace std;

int main()
{
    InputRadius();
    GetCircleArea();

    InputRectWH();
    GetRectArea();

   
    rectVolumn *rv;
    rv=new rectVolumn;
    inputVolumn();
    getVolumn();
    delete rv;


    return 0;
}

Circle.h
void InputRadius();
void GetCircleArea();

Rect.h
void InputRectWH();
void GetRectArea();

rectvalum.h
struct rectVolumn
{
    int length;
    int width;
    int height;
    int volumn;
  
}*rv;
void inputVolumn();
void getVolumn();
2013-10-29 12:28
碧海苍梧
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2013-10-29
收藏
得分:0 
回复 6楼 blueskiner
没听懂您说的什么意思,可不可以麻烦您说的清楚一点,加在哪一个文件中啊
2013-10-29 12:36
碧海苍梧
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2013-10-29
收藏
得分:0 
回复 8楼 i80286
我们老师让我们练习创建多文件的C++程序,所以才写成这个样子的
2013-10-29 13:02
碧海苍梧
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2013-10-29
收藏
得分:0 
回复 10楼 blueskiner
但是我这个错误怎么解决啊?
2013-10-29 13:07
碧海苍梧
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2013-10-29
收藏
得分:0 
回复 11楼 i80286
编译的时候没有错误,但是连接的时候就有错误了
2013-10-29 13:09
碧海苍梧
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2013-10-29
收藏
得分:0 
回复 14楼 i80286
我把定义改成
void inputVolumn()
void getVolumn()

连接时错误提示
Linking...
test.obj : error LNK2005: "struct rectVolumn * rv" (?rv@@3PAUrectVolumn@@A) already defined in rectvalum.obj
Debug/我的程序.exe : fatal error LNK1169: one or more multiply defined symbols found
执行 link.exe 时出错.

主函数引用改成
    inputVolumn(rectVolumn *rv);
    getVolumn(rectVolumn *rv);
编译的时候直接就出错了
test.cpp
E:\大三上学期\C++\实验二\我的2\我的程序\我的程序\test.cpp(18) : error C2275: 'rectVolumn' : illegal use of this type as an expression
        e:\大三上学期\c++\实验二\我的2\我的程序\我的程序\rectvalum.h(2) : see declaration of 'rectVolumn'
E:\大三上学期\C++\实验二\我的2\我的程序\我的程序\test.cpp(18) : error C2660: 'inputVolumn' : function does not take 1 parameters
E:\大三上学期\C++\实验二\我的2\我的程序\我的程序\test.cpp(19) : error C2275: 'rectVolumn' : illegal use of this type as an expression
        e:\大三上学期\c++\实验二\我的2\我的程序\我的程序\rectvalum.h(2) : see declaration of 'rectVolumn'
E:\大三上学期\C++\实验二\我的2\我的程序\我的程序\test.cpp(19) : error C2660: 'getVolumn' : function does not take 1 parameters
执行 cl.exe 时出错.
2013-10-29 13:30
碧海苍梧
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2013-10-29
收藏
得分:0 
回复 16楼 TonyDeng
前两个放到一起的时候没有出错,第三个求长方体体单独放在一个文件中时也没有错,但是,把它和前两个合到一起,也就是我前面发的代码,这个时候就有错误了
2013-10-29 13:50
碧海苍梧
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2013-10-29
收藏
得分:0 
回复 17楼 i80286
可以了啊,您能告诉我这是怎么回事吗?
2013-10-29 13:57
快速回复:C++程序,编译没有问题,连接时出错,这是怎么回事?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012289 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved