Bir tek (enum Symbol {e,a,b,c,d};
ile oluşturulan) Simge okumak için >> operatörünü aşırı çalışıyorum: bunun yerine ne olduğunuaşırı strchr kullanma >>
istream & operator >> (istream & is, Symbol & sym) {
Symbol Arr[]={e,a,b,c,d};
char ch;
is>>ch;
if (strchr("eabcd",ch))
sym=Arr[ch-'e'];
else {
is.unget();
is.setstate(ios::failbit);
}
return is;
}
Ama bu, bazı çöp (sayılar) okur < < aşırı yükümde yazdırmaya çalışırken bir segmentasyon hatasına yol açan, ne yapıyorum? Düzenleme: Oh, ve tabii ki iostream
ve cstring
dahil olmak üzere using namespace std;
başlangıçta ekledim. ch
olan
Sadece merak etmek, hangi sorunu çözmek istiyorsunuz? – Incomputable
Bu, bir üniversitede Nesne Programlama kursu için daha büyük bir projenin bir parçası, daha sonra bir ekleme tablosu ile onlarla ilgili işlemler yapmak için Semboller okumalıyım. –