【发布时间】:2021-08-07 15:27:04
【问题描述】:
source.h:
#include <iostream>
class date{
public:
std::string str_time;
friend std::istream& operator >> (std::istream& para_stream, date& para_date);
};
source.cpp:
#include "source.h"
std::istream& operator >> (std::istream& para_stream, date& para_date)
{
istream >> para_date.str_time;
return istream;
}
错误:
错误 2 error LNK2019: unresolved external symbol "class std::basic_istream
【问题讨论】:
-
您忘记链接定义。它与重载、运算符或
istream无关。 -
错误是关于数据库对象文件 - 你是如何构建你的东西的?
-
这能回答你的问题吗? LNK2019 error c++ unresolved external symbol
-
@doctorlove 是的,我也知道,但是当我删除这个运算符重载函数时,它不会出错。
-
您真的应该阅读 anatolyg 评论中的帖子。
include关键字仅在编译时加载包含文件。但是要构建一个可执行文件,您必须将source.o与您的主要源链接。
标签: c++ overloading operator-keyword istream