我试图用不同的文件编写我的C++程序,但似乎无法正常工作。有人能帮我吗?

单独的.cpp

#include "separate.h"
#include <iostream>

void Separate() {

cout << "text";

}

单独的
#include <string>
using namespace std;

class OneLine {

    Separate();

private:
    string vari;

};

main.cpp
#include "separate.cpp"
#include <iostream>

using namespace std;

int main () {

    Separate s;
    s();

return 0;
}

最佳答案

两个基本错误:

separate.cpp中,您需要

void OneLine::Separate() { /*...*/ }

并在main.cpp中,您想要创建自己类型的对象并像这样调用其上已定义的方法:
OneLine ol;
ol.Separate();

为此,您需要使方法public,更改separate.h:
class OneLine {

public:
    Separate();

//...
};

您还想更改一些简单示例不需要的东西,但从长远来看,它们将变得必要:
  • 您要包括警卫队,google表示“包括警卫队”
  • 您不需要using namespace std;-摆脱它,并在必要时添加std::
  • 10-04 15:19