一个项目有两个文件 Hello.h 和 Hello .cpp
你好。
#include <string>
#include <iostream>
class Hello{
void print ();
}
你好.cpp
#include <Hello.h>
void Hello:: print (){
std::cout << "hello";
}
主.cpp
#include "Hello.h"
int main(){
Hello hl;
hl.print();
}
获取要打印的未定义引用。在视觉工作室中如何设置要链接的对象文件?
我在这里看到两件事(您面临的未定义引用是由于第一点(:
-
在
Hello.cpp
中,您已将标头包含在#include <Hello.h>
而不是#include "Hello.h"
中。当我们想要包含用户创建的头文件时,后者是我们应该做的,除非您已将头文件添加到系统头列表中(我假设您没有这样做(。有关详细信息,请参阅包含语法。 -
默认情况下,类会将其成员设为私有。因此,如果要访问函数
print()
,则应将其指定为类的公共成员函数。这将抛出错误:"void Hello::p rint(("在此上下文中是私有的,但由于上述要点,您没有得到这一点。