java - c++ gcc多文件链接出现undefined reference to怎么解决?
天蓬老师
天蓬老师 2017-04-18 10:08:01
[Java讨论组]

我想不是代码的错,试了用vc98可以编译,但是用gcc就不行,用gcc写其他链接还是这个问题。
我还把代码贴上来吧。
头文件.....................

ifndef SALES_H_INCLUDED
define SALES_H_INCLUDED
namespace SALES
{
    const int Q=4;
    struct Sales
    {
        double sales[Q];
        double average;
        double max;
        double min;
    };
    void setsales(Sales& s,const double ar[],int n);
    void setsales(Sales& s);
    void showsales(const Sales& s);
}


#endif // SALES_H_INCLUDED

源文件1.................................

#include
#include"sales.h"

namespace SALES
{
    using namespace std;
    
    void setsales(Sales& s,const double ar[],int n)
    {
        double max=ar[0],min=ar[0],sum=ar[0];
        for(int i=1;imax)
                max=ar[i];
            if(ar[i]

main源文件............................

include
include"sales.h"
using namespace std;

int main()
{
    using namespace SALES;
    Sales m1,m2;
    double a[4]={1.1,2.2,3.3,4.4};
    setsales(m1,a,4);
}
天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回复(1)
怪我咯

VS2015的clang大部分兼容gcc,可以通过编译,楼上的知乎问题主要是template函数,函数声明与定义要在同一头文件下的。所以我个人认为是编译器问题吧

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号