zoukankan      html  css  js  c++  java
  • eclipse C++ ld: 1 duplicate symbol for architecture x86_64

    想要在test_bignit.cpp里面使用bigint.cpp的函数

    #include <vector>
    #include <string>
    using namespace std;
    
    typedef string BigInt;
    typedef vector<double> Poly;
    
    BigInt multiply_int(const BigInt &a,const BigInt &b){
        Poly d(a.size()+b.size()-1,0);
        BigInt res;
        double temp=0;
        for(int i=0;i<a.size();i++){
            for(int j=0;j<b.size();j++){
                d[i+j] += (a[i]-48) * (b[j]-48);
            }
        }
        for(int i=0;i<d.size();i++)
        res.append(to_string((int)d[i]));
        return res;
    }
    #include <iostream>
    #include <vector>
    
    using namespace std;
    
    #include "bigint.cpp"
    
    int main()
    { 
    
      BigInt A,B;
    
      cin >> A >> B;
    
      cout << multiply_int(A,B) << endl;
    
    }

    一直报错:ld: 1 duplicate symbol for architecture x86_64

    网上一直说import了重复的东西或者有多个main,好吧,查了很久,都没问题。。。

    后来我把test_bigint.cpp中 #include "bigint.cpp" 删去,并在使用前加上函数定义

    #include <iostream>
    //#include "bigint.cpp"
    using namespace std;
    typedef string BigInt;
    BigInt multiply_int(const BigInt &a,const BigInt &b);
    int main()
    {
    
      BigInt A,B;
    
      cin >> A >> B;
    
      cout << multiply_int(A,B) << endl;
    
    }

    解决问题。。。。。。。

  • 相关阅读:
    “孤立”用户
    MongoDB 维护Replica Set
    Design7:数据删除设计
    abap取中值的函数
    REPLACE...IN.....WITH.... 的使用
    ABAP中RETURN与EXIT语句的区别
    在一个程序中调用另一个程序并且传输数据到选择屏幕执行这个程序
    Extract Datasets
    事件
    计算字符串长度的实例
  • 原文地址:https://www.cnblogs.com/developerchen/p/7559954.html
Copyright © 2011-2022 走看看