如何将C++源文件与代码::块连接起来

如何将C++源文件与代码::块连接起来,c++,linker,C++,Linker,我知道我做错了什么。我不太明白该怎么做 通过头文件将两个.cpp文件链接在一起。召唤 方法无法看到其他源 我使用Code::Blocks作为MinGW的IDE 任何帮助都将不胜感激。那会更糟 如果您能在回复中显示固定来源链接,将不胜感激 用它粘贴页面 /***********************************main.cpp***********************************/ #include <iostream> using namespace

我知道我做错了什么。我不太明白该怎么做 通过头文件将两个.cpp文件链接在一起。召唤 方法无法看到其他源

我使用Code::Blocks作为MinGW的IDE

任何帮助都将不胜感激。那会更糟 如果您能在回复中显示固定来源链接,将不胜感激 用它粘贴页面

/***********************************main.cpp***********************************/
#include <iostream>

using namespace std;

#include "test.h"

int main()
{
    printTest();            //can't see printTest, defined in test.cpp
    return 0;
};


/***********************************test.h***********************************/
#ifndef TEST_H_INCLUDED
#define TEST_H_INCLUDED

void printTest();

#endif // TEST_H_INCLUDED


/***********************************test.cpp***********************************/
#include "test.h"

void printTest()
{
    cout << "Hello world!" << endl;
};

在test.cpp replace cout中,在test.cpp replace cout中,答案对我来说似乎不完整。 您需要在test.cpp中添加include,以便编译器知道cout是什么


正如sanket所说,您应该在test.cpp中使用std::cout和std::endl。

sanket的答案对我来说似乎不完整。 您需要在test.cpp中添加include,以便编译器知道cout是什么

正如sanket所说,您应该在test.cpp中使用std::cout和std::endl。

您可能会发现它们很有用。看起来代码块使用的是托管生成系统,因此如果您将文件正确添加到项目中,那么它应该知道如何编译该文件并链接到生成的对象文件中

当您使用namespace std时,为了更明确地说明一些其他注释;命名空间仅被引入using语句所在文件的作用域。这就是为什么其他人告诉您显式指定std::namespace。您还可以将所有std名称空间放入test.cpp文件的作用域中。很多人认为这是一种坏习惯。一般来说,最好是通过

using std::cout;
using std::endl;
最后,记住std::endl添加了一个新行并刷新缓冲区,它并不是在所有情况下都能很好地替换新行字符。

您可能会发现它很有用。看起来代码块使用的是托管生成系统,因此如果您将文件正确添加到项目中,那么它应该知道如何编译该文件并链接到生成的对象文件中

当您使用namespace std时,为了更明确地说明一些其他注释;命名空间仅被引入using语句所在文件的作用域。这就是为什么其他人告诉您显式指定std::namespace。您还可以将所有std名称空间放入test.cpp文件的作用域中。很多人认为这是一种坏习惯。一般来说,最好是通过

using std::cout;
using std::endl;

最后,记住std::endl添加一个新行并刷新缓冲区,它并不是所有情况下新行字符的好替代品。

您的代码是正确的,您如何调用编译器?是否已将test.cpp添加到项目文件中?IDE需要知道要编译哪些文件。您是如何尝试构建程序的,您的错误到底是什么?粘贴箱上的代码看起来不错。欢迎使用StackOverflow。请编辑您的问题并在此处提供来源。问题应该是独立的,不依赖于外部站点的链接;如果外部站点消失或不可用,问题就变得毫无意义。此外,你不应该要求人们离开,以便获得信息来帮助你。请阅读关于如何提问的说明。谢谢如果不在项目中编译它们,则必须在主文件代码块中同时包含头文件和实现文件。这是我拒绝使用无意义的项目的一个回忆,当它是这样一个短的3文件时。在include test.h下面添加include test.cpp行。用C::B测试并运行。您的代码是正确的,您如何调用编译器?是否已将test.cpp添加到项目文件中?IDE需要知道要编译哪些文件。您是如何尝试构建程序的,您的错误到底是什么?粘贴箱上的代码看起来不错。欢迎使用StackOverflow。请编辑您的问题并在此处提供来源。问题应该是独立的,不依赖于外部站点的链接;如果外部站点消失或不可用,问题就变得毫无意义。此外,你不应该要求人们离开,以便获得信息来帮助你。请阅读关于如何提问的说明。谢谢如果不在项目中编译它们,则必须在主文件代码块中同时包含头文件和实现文件。这是我拒绝使用无意义的项目的一个回忆,当它是这样一个短的3文件时。在include test.h下面添加include test.cpp行。使用C::B和works进行测试。