ld:找不到架构x86_64 Row :: AddColumn的符号

时间:2017-09-12 01:53:44

标签: c++ c++11 gcc

建立目标:Lab1 调用:MacOS X C ++链接器 g ++ -o“Lab1”./src/EclipseR.o ./src/EclipseR_test.o ./src/Row.o ./src/Rows.o
架构x86_64的未定义符号:   “Row :: AddColumn(int,std :: __ 1 :: basic_string,std :: __ 1 :: allocator>)”,引自:       EclipseR.o中的_main

Row.h

#fndef ROW_H_
#define ROW_H_
#include <iostream>
using namespace std;
Class Row {
public:
    Row();
    Row(std::string id);
    string id;
    string columns[24]
    void AddColumn(int index, std::string value);
};
#endif

Row.cpp

#include "Row.h"
#include <iostream>
#include <string>
using namespace std;

string columns[24];

Row::Row(){
    // TODO
}

Row::Row(string id) {
    this->id = id;
    cout << "ID: " << this->id;
}

Row::~Row()
{
    //Deconstructor
}

void AddColumn(int index, std::string value)
{
    columns[index] = value;
}

1 个答案:

答案 0 :(得分:0)

我想出了我的问题。

在我的Row.cpp类中,我需要更改以下内容

void AddColumn(int index, std::string value){...}

void Row::AddColumn(int index, std::string value){...}