Ich versuche, einen Operator zu überlasten, um auf die Elementklasse zu reagieren und einige Schwierigkeiten wegen der Zeichenfolge zu haben. Dies wird in eine Kopfzeile und eine andere Datei aufgeteilt. (Edit:. Oops, sorry)Operator überlastet '<<' and '>>' und eine Zeichenfolge
#include <iostream>
#include <iomanip>
#include <cstdlib>
#include <string>
using namespace std;
class item
{
private:
string itemName;
public:
string getitemName() const;
friend std::istream &operator >> (std::istream & instr, const item& R);
friend std::ostream &operator << (std::ostream & outst, const item& P);
};
string item::getitemName() const
{
return itemName;
}
std::istream& operator >> (std::istream& instr, const item& R)
{
instr >> R.getitemName();
return instr;
}
std::ostream& operator << (std::ostream& outst, const item& P)
{
outst << P.getitemName();
return outst;
}
Wenn 'getitemName' ein Problem ist, zeigt es irgendwie obligatorisch ist – StoryTeller
Sie werden wahrscheinlich ein Problem auf dem' Betreiber >> 'die angeblich zu füttern das Item, das Sie in Parameter angeben (über die Methode 'getItemName()'). Aber der Parameter ist vom Typ const item &, was ein bisschen seltsam ist. Bitte zeigen Sie die 'getiemName' Funktion Implementierung – Actarus