包含头文件时的问题

时间:2015-09-22 12:16:44

标签: c++ header

所以当我尝试包含头文件时,我遇到了问题。我正在定义一个标题并将其包含在我的所有文件中,但我收到此错误“未解析的外部符号”void_cdecl print(void)“(?print @@ YAXXZ)在函数main中引用。

我的主文件TEST.cpp

#include "stdafx.h"
#include "Header1.h"
using namespace std;
int main()
{
    print();
    return 0;
}

我只做了一个简单的打印功能,我在Source1.cpp

中定义了这个功能
#include "Header1.h"

void print() {
    cout << "HELLO WORLD" << endl;
}

我的头文件看起来像这样 - Header1.h

#pragma once
#ifndef HEADER1_H
#define HEADER1_H

void print();
#endif

我做了一些研究,我发现这个问题通常是由拼写错误引起的,但我真的看不到它。

3 个答案:

答案 0 :(得分:0)

我只做了一个简单的打印功能,我在 Source1.cpp

中定义

此文件名应为 Header1.cpp

 #include "Header1.h"

 void print() {
    cout << "HELLO WORLD" << endl;
 }

答案 1 :(得分:0)

您有链接问题。

你要编译Source1.cpp并链接它。

答案 2 :(得分:0)

你缺少std :: iostream:

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

 void print() {
    cout << "HELLO WORLD" << endl;
 }