赞
踩
以下出现严重性 代码 说明 项目 文件 行
错误 LNK2005 “class std::basic_ostream<char,struct std::char_traits > & __cdecl operator<<(class std::basic_ostream<char,struct std::char_traits > &,class Player const &)” (??6@YAAAV?$basic_ostream@DU
严重性 代码 说明 项目 文件 行
错误 LNK1169 找到一个或多个多重定义的符号
解决方案:
把符号重载函数写在。cpp实现文件就可以了。不能写在。h内部。
#ifndef SPEAKER_H
#define SPEAKER_H
#define _CRT_SECURE_NO_WARNINGS
#include
#include
#include
#include
#include
void Showdeque(deque&AllScore);
class Player
{
friend ostream& operator<<(ostream& os, const Player& MyPlayer);
public:
unsigned int wAge=0;
string szName=0;
dequeAllScore;
double AveScore=0;
public:
Player() = default;
Player(unsigned int wAge,string szName,double AveScore):
wAge(wAge), szName(szName), AveScore(AveScore){}
};
// ostream& operator<< ( ostream& ofs, const Player& MyPlayer)
//{
// /*os << MyPlayer.szName
// << " "
// << MyPlayer.wAge
// << “平均分:”
// << MyPlayer.AveScore
// <<endl; */
// //Showdeque(MyPlayer.AllScore);
// return ofs;
//}
void CreatSpeakBook(map<unsigned int, Player>&PlayBook);
void ShowPlayerInfo(map<unsigned int, Player>&PlayBook);
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。