| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 431 人关注过本帖
标题:SOS:一个文件链接的问题(特邀版主和各位高手指点)
只看楼主 加入收藏
南国利剑
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:29
帖 子:1165
专家分:3536
注 册:2010-4-12
结帖率:89.66%
收藏
已结贴  问题点数:20 回复次数:2 
SOS:一个文件链接的问题(特邀版主和各位高手指点)
以下是我的代码,分三个文件,写在一个文件里头没有问题,但是分开就是无法正确链接。请指教。
//头文件 muban.h
 
#include <iostream>
#include<cstdlib>
using namespace std;
 
struct student
{
    int id;
    float gpa;
};
 
 
template <typename T>
class store
{
    T item;
    int havevalue;
public:
    store();
 
    T getelem(void);
    void putelem(T x);
 
};
 
//实现文件 muban.cpp
 
#include "muban.h"
 
template<class T>
T store<T>::getelem(void)
{
    if(havevalue==0)
    {
        cout<<"No item present!"<<endl;
        exit(1);
    }
    return item;
 
}
 
 
template<class T>
void store<T>::putelem(T x)
{
    havevalue++;
    item=x;
 
}
 
template<class T>
store<T>::store():havevalue(0)
{}
 
 
//主函数 main.cpp
 
#include "muban.h"
int main()
{
    student g={1000,23};
    store<int> s1,s2;
    store<student> s3;
    store<double> D;
 
    s1.putelem(3);
    s2.putelem(-7);
    cout<<s1.getelem()<<ends<<s2.getelem()<<endl;
    s3.putelem(g);
    cout<<"the student id is "<<s3.getelem().id<<endl;
    cout<<"retrieving object D  ";
    cout<<D.getelem()<<endl;
    system("pause");
 
}
 
 




 
搜索更多相关主题的帖子: SOS 版主 链接 文件 
2010-04-29 12:40
cnfarer
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:179
帖 子:3330
专家分:21157
注 册:2010-1-19
收藏
得分:14 
手工编译的话:
1.先将muban编译出obj
2.链接时将main.obj和上面的muban.obj一起就行了!
如果用VC++,将三个文件包含在一个项目中就行了!

★★★★★为人民服务★★★★★
2010-04-29 15:09
南国利剑
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:29
帖 子:1165
专家分:3536
注 册:2010-4-12
收藏
得分:0 
回复 2楼 cnfarer
我用的就是vc++6.0,我在给出的代码中也包含了头文件,为什么还是过不了?
我这三个文件是在同一个工程里头的,没有错。
恳请版主指教。
谢谢

南国利剑
2010-04-29 17:34
快速回复:SOS:一个文件链接的问题(特邀版主和各位高手指点)
数据加载中...
 
   



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

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