Tag: operator-overloading

Operator überladung ist ein feature, einer Programmiersprache, die es erlaubt benutzerdefinierte Implementierungen für die Betreiber abhängig von den Typen der beteiligten Operanden. Einige Sprachen erlauben, neue Operatoren definiert werden, während andere erlauben nur Neudefinition der bestehenden.

friend-operator == oder << Wann sollte ich es verwenden?

Anzahl der Antworten 5 Antworten
Spüre ich, dass ich ein bisschen ein Loch in mein Verständnis von der friend Stichwort. Ich habe eine Klasse presentation. Ich benutze es in meinem code zwei Variablen present1 und present2, die ich vergleichen mit ==: if(present1==present2)

Binären und-operator überladen auf eine Vorlagen-Klasse

Anzahl der Antworten 5 Antworten
War ich vor kurzem versucht, um zu Messen, mein operator überladen/template Fähigkeiten und wie ein kleiner test, erstellt der Container-Klasse unten. Während dieser code kompiliert fein und funktioniert korrekt unter MSVC 2008 (zeigt 11), die beide MinGW/GCC

Klasse Operatoren

Anzahl der Antworten 5 Antworten
Machte ich die folgenden Operatoren überladen test: #include <iostream> #include <string> using namespace std; class TestClass { string ClassName; public: TestClass(string Name) { ClassName = Name; cout << ClassName << " constructed." << endl; } ~TestClass() {

Wie kann ich prüfen, ob null-Werte in einem '==' operator überladen, ohne eine unendliche Rekursion?

Anzahl der Antworten 13 Antworten
Folgenden wird Ursache eine unendliche Rekursion auf der == operator überladen Methode Foo foo1 = null; Foo foo2 = new Foo(); Assert.IsFalse(foo1 == foo2); public static bool operator ==(Foo foo1, Foo foo2) { if (foo1 == null)

Post-Inkrement-operator überladen in c++

Anzahl der Antworten 3 Antworten
Dies ist meine post-Inkrement-operator überladen-Deklaration. loc loc::operator++(int x) { loc tmp=*this; longitude++; latitude++; retrun tmp; } Meiner Klasse Konstruktor loc(int lg, int lt) { longitude = lg; latitude = lt; } In der main-Funktion programmiert haben, wie

Warum nicht überlasten operator+=() für std::vector?

Anzahl der Antworten 4 Antworten
Habe ich angefangen zu lernen, C++, so dass ich nicht weiß in meinem Mangel an wissen/Erfahrung, warum etwas so scheinbar einfach um einen rookie als was ich bin, zu beschreiben, ist nicht bereits in der STL. Hinzufügen

Warum C++ STL-Container verwenden "kleiner als" - operator "< " und nicht "gleich ist gleich" operator== als Komparator?

Anzahl der Antworten 3 Antworten
Während der Durchführung eines Komparators Betreiber innerhalb einer benutzerdefinierten Klasse std::map kam ich über diese Frage und konnte nicht sehen, überall gefragt. Abgesehen von der obigen Frage, ist auch daran interessiert zu wissen, in kurzen, wie operator<

Was ist die Rangfolge beim schreiben eine doppelte Ungleichheit in Python (explizit im code, und wie kann dieser überschrieben werden, für die arrays?)

Anzahl der Antworten 3 Antworten
Was ist der spezifische code, in order, ausgeführt wird, wenn ich nach etwas Fragen, wie >>> 1 <= 3 >= 2 True Wenn beide haben die gleiche Priorität und es ist einfach die Reihenfolge Ihrer Auswertung, warum

Wie, um eine überlastung "operator %" in c++

Anzahl der Antworten 4 Antworten
Ich möchte, um eine überlastung der % - operator in c++, um zu vermeiden, dass die Bearbeitung einer riesigen block von code von hand. Ich versuchte dies: static float operator %(const float& left, const float& right); In

muss überlast-operator< - und null-check

Anzahl der Antworten 5 Antworten
Im überlastung der lessthan-operator in c# und ich Frage mich, ob diese Bedürfnisse auf null prüfen. Unten finden Sie ein Beispiel: public static bool operator <(MyClass x, MyClass y) { if (x == null && y ==

virtual operator float()

Anzahl der Antworten 3 Antworten
Ich würde gerne wissen, die Bedeutung der virtual operator float() - Methode den folgenden code es ist verwendet für das Gießen ? #include <iostream> class Frac { protected: int a, b; public: Frac(int x, int y):a(x),b(y) {}

C++ header/Umsetzung-Datei und das überladen von Operatoren

Anzahl der Antworten 2 Antworten
Es ist nicht oft, dass ich die Arbeit in C++ und ich habe laufen in eine einfache Fehler, die hält mich auf. In Xcode habe ich die folgenden zwei Fehlermeldungen: In Event.h: Control reaches end of non-void

C++ array-operator überladen

Anzahl der Antworten 3 Antworten
Ich bin momentan dabei, ein Haufen, wie diese: struct Heap{ int H[100]; int operator (int i){return H[i];} //... }; Wenn ich versuche zu drucken Elemente von es ich wie das tun: Heap h; //add some elements...

"+"- operator für Java-Klassen

Anzahl der Antworten 5 Antworten
Habe ich eine Klasse wie folgt aus: private static class Num { private int val; public Num(int val) { this.val = val; } } Ist es möglich, auf Objekte der Klasse mit der "+"-operator? Num a =

wie definieren friend-Funktion und operator-überladung in c++

Anzahl der Antworten 2 Antworten
ich will wissen über die friend-Funktion und operator overloading in c++ und wie Sie funktionieren? mit dem Programm? InformationsquelleAutor | 2009-01-27

Warum verwenden wir Referenz Rückkehr in Zuweisungsoperator überladen und nicht bei plus-minus-ops?

Anzahl der Antworten 5 Antworten
Wie ich gelesen habe in Büchern und im web, in C++ können wir die überlastung der "plus" oder "minus" - Operatoren mit diesen Prototypen (als member-Funktionen einer class Money): const Money operator +(const Money& m2) const; const

Ist es möglich zu implementieren, die Ereignisse in C++?

Anzahl der Antworten 4 Antworten
Wollte ich implementieren Sie ein C# event in C++ nur um zu sehen, ob ich es tun könnte. Ich steckengeblieben, ich weiß, die Unterseite ist falsch, aber was ich merke mein größtes problem ist... Wie kann ich

Erstellen Sie eine Klasse indexer operator[] erlaubt string-parameter (string, index)

Anzahl der Antworten 2 Antworten
Ich möchte erstellen Sie eine Klasse in c++. Diese Klasse muss die Verwaltung mit einer Sammlung. OK, kein problem, ich möchte mit operator , aber natürlich, in diesem Fall, mein Wunsch ist es, den index nicht durch

istream >> ostream << Operator-Überladung mit * Zeiger

Anzahl der Antworten 1 Antworten
Wie kann ich die überlastung der >> und << Betreiber, wenn Sie den Umgang mit Zeigern? in der Kopfzeile: friend std::istream& operator >>( std::istream& ins, Classname* & e); friend std::ostream& operator <<( std::ostream& outs, const Classname *

Sind freie Betreiber->* überlastungen böse?

Anzahl der Antworten 4 Antworten
Ich war durchlesen Abschnitt 13.5 nach Widerlegung der Vorstellung, die built-in-Operatoren nicht an der überlast Auflösung, und festgestellt, dass es kein Abschnitt auf operator->*. Es ist nur ein generischer binärer operator. Seine Brüder, operator->, operator*, und operator

Error: initial value of reference to non-const sein muss ein Wert

Anzahl der Antworten 3 Antworten
class A { public: int v; A * p; A& operator*(const A& a) { return this->v*a.v//here is a red line under this say error initial value of reference to non-const must be an value } ~A() {

Swift-operator `Tiefgestellt` []

Anzahl der Antworten 4 Antworten
Ich bin Anfänger mit der Swift ohne Vorwissen mit den Betreibern. Habe ich die folgende Klasse class Container { var list: [Any] = ; } Ich umsetzen will, die Betreiber subscript um Zugriff auf die Daten

Nicht std::ostream-Ausgabe ein const char-array?

Anzahl der Antworten 1 Antworten
Für den Spaß und die Erfahrung, ich bin ändern und die Erkundung der source-code für Blobby Volley 2 1.0 (Linux). Gut... ich würde werden änderungen am Quellcode, aber ich kann nicht mal das Programm zu kompilieren. (Traurig,

Fehler CS0563 (Einer der Parameter eines binären operators muss der enthaltende Typ)

Anzahl der Antworten 1 Antworten
Mein source-code (unten) generiert Fehler CS0563, da beide Parameter in meinem CombinedJobs-operator+ (siehe "//Schritt 5: ..." im source-code) aufgeführt sind, als Job (im Gegensatz zu int, double, etc). Wie kann ich diesen code um den Fehler zu

Lesen aus einer Datei mithilfe einer überladenen >> Betreiber

Anzahl der Antworten 1 Antworten
Ich versuche aus einer Datei zu Lesen ein Kunde den Namen, die id, und Kredit-Informationen. Die Datei ist wie folgt aufgebaut: Williams, Bill 567382910 380.86 Davidson, Chad 435435435 400.00 Grundsätzlich, jedes mal, wenn ich komme, um einen

Wie für den Zugriff auf Instanz-Variablen in C++ wie Objective-C getter-und setter

Anzahl der Antworten 5 Antworten
Der folgenden ist ein Beispiel: Im Kreis.h class circle { double _radius; public: double getRadius() {return _radius;} void setRadius(double r) {_radius=r;} } In main int main() { circle a; cout<<a.getRadius(); //I want to use "a.radius" a.setRadius(3.2); //I

Die übergabe eines Objekts als Referenz zu Überladene Operator - C++

Anzahl der Antworten 4 Antworten
Ziemlich neu in C++. Ich habe Menschen gesehen, die in der Regel Objekte durch Verweis übergeben in-operator überladen. Gut, ich kann nicht herausfinden, wenn es wirklich notwendig ist. Wie in den folgenden code, wenn ich entfernen kaufmännisches

Warum ist es nicht möglich, um eine überlastung der ternäre operator?

Anzahl der Antworten 5 Antworten
Warum ist es nicht möglich, um eine überlastung der ternäre operator ' ?: '? Ich den ternären operator oft zu konsolidieren, wenn Aussagen, und bin neugierig, warum die Sprache der Designer wählte untersagen, für die der operator

überlastung Prä-Inkrement und post-Inkrement

Anzahl der Antworten 4 Antworten
Sah ich ein Beispiel über die Implementierung von pre-Inkrement und post-Inkrement, die behauptet, dass eine überlastung Prä-Inkrement ist in der Lage zu sein, definiert als T& T ::operator++() - und überlastung post-Inkrement definiert und implementiert, pre-incremet wie

Wie fügen Sie den Einzug in den stream-operator

Anzahl der Antworten 4 Antworten
In unserem Projekt verwenden wir die c++ - stream-operator (<<) in unsere Objekt-Modell zum ausdrucken eine einfache readible format der Daten. Ein Vereinfachtes Beispiel ist dieses: std::ostream& operator<<(std::ostream & oStream, const OwnClass& iOwnClass) { oStream << "[SomeMember1:

Pass Zeiger auf template-Funktion als Funktions-argument?

Anzahl der Antworten 6 Antworten
Sagen, ich möchte eine C++ - Funktion zum durchführen arithmetische Operationen auf zwei Eingänge, behandeln Sie als einem bestimmten Typ: pseudo: function(var X,var Y,function OP) { if(something) return OP<int>(X,Y); else if(something else) return OP<double>(X,Y); else return OP<string>(X,Y);

C++ statische operator überladen

Anzahl der Antworten 4 Antworten
Ist es möglich, überlast-Klasse in C++ Operatoren, die im statischen Kontext? z.B. class Class_1{ ... } int main() { Class_1[val]... } Sollte Class_1[val] Ertrag ein Typ? Wie Sie erwarten, zu tun Class_1[val] v; ? Ich wollte es

ifstream der operator>> um zu erkennen, das Ende der Zeile?

Anzahl der Antworten 3 Antworten
Habe ich eine unregelmäßige Liste, wo die Daten wie folgt Aussehen: [Number] [Number] [Number] [Number] [Number] [Number] [Number] [Number] [Number] [Number] [Number] [Number] [Number] [Number] [...] Beachten Sie, dass einige Linien haben 2 zahlen, manche haben auch

Gibt es eine Möglichkeit, tun Methode überladen in TypeScript?

Anzahl der Antworten 5 Antworten
Gibt es eine Möglichkeit, tun Methode überladen in Schriftlicher Sprache? Ich erreichen will, so etwas wie dieses: class TestClass { someMethod(stringParameter: string): void { alert("Variant #1: stringParameter = " + stringParameter); } someMethod(numberParameter: number, stringParameter: string): void

c++ Polymorphismus-operator overloading

Anzahl der Antworten 6 Antworten
Wie kann ich machen, rein virtuelle Funktion einen operator+ (); - Funktion. wheh ı tun, wie dieses in der Basisklasse int operator+()=0; compiler-Fehler gibt . in Ableitung der Klasse operator+ () - Funktion compiler sagen, dass das

Operator Overloading in C++; zu viele Parameter für << operation

Anzahl der Antworten 2 Antworten
Ich habe einige code unten, das wird nehmen Sie einige Namen und Alter und Mach was mit Ihnen. Schließlich wird es drucken Sie Sie aus. Ich muss meine print() Funktion mit einem globalen operator<<. Ich sah auf

operator überladung(Freund und member-Funktion)

Anzahl der Antworten 5 Antworten
Was ist der Unterschied zwischen operator-überladung mithilfe der friend Schlüsselwort und als member-Funktion innerhalb einer Klasse? Auch, was ist der Unterschied in jedem Fall der unären operator überladen (d.h. als ein Freund, der vs als member-Funktion)? InformationsquelleAutor

Fehler: "ostream" nicht der name einer Art

Anzahl der Antworten 3 Antworten
Ich bin überlastung der << und >> - operator in C++, aber kann es nicht kompilieren. Die Fehlermeldung :" Fehler: "ostream" nicht der name ein geben" Warum bekam ich diese Fehlermeldung? Wie es zu lösen ist? #ifndef

Überladen des global type conversion operator

Anzahl der Antworten 5 Antworten
Testen und das Ergebnis anzeigen einige Funktionen meiner Bibliothek, ich bin die Schaffung einer Reihe von praktischen Funktionen. Ich habe eine execute - Funktion, die wie folgt aussieht : template <typename R, typename I> std::string execute( const

Über be - * operator - entweder null oder zwei Argumente

Anzahl der Antworten 2 Antworten
Ich bin neu auf das überladen von Operatoren, ich habe einige Suche und fand diesen Artikel hilfreich, schrieb ich meinen eigenen code wie der Autor hat, aber ich bekomme vector vector::operator*(float, vector) must take either zero or

Erstellen `**` power-operator für Scala?

Anzahl der Antworten 4 Antworten
Ich mag die ** syntax für pow, erhältlich in vielen Sprachen (wie z.B. Python). Ist es möglich, Ihnen diese in Scala, ohne änderung an der Scala 'base' code? Mein Versuch, eine Int nur eins: import scala.math.pow implicit

explicit conversion operator-Fehler beim konvertieren von generischen Listen

Anzahl der Antworten 2 Antworten
Erstelle ich eine explizite Konvertierung operator für die Konvertierung zwischen einer generischen Liste von entity-Typen, um eine generische Liste von Modell-Typen. Weiß jemand, warum bekomme ich die folgende Fehlermeldung: Benutzerdefinierte Konvertierung ist eine Konvertierung zu oder von

Gewusst wie: überschreiben der [] - operator in Python?

Anzahl der Antworten 3 Antworten
Was ist der name der Methode zum überschreiben der operator (subskript-notation) für eine Klasse in Python? InformationsquelleAutor Sahas | 2009-12-24

Fehler C2678: binary '==' : kein operator gefunden, die einen linken Operanden des Typs (oder es gibt keine akzeptable Konvertierung)

Anzahl der Antworten 1 Antworten
Ich versuche zu kompilieren, den folgenden code: #include <boost/geometry/geometries/point_xy.hpp> #include <iostream> #include <utility> typedef boost::geometry::model::d2::point_xy<long> Point; typedef std::pair<Point, Point> Vector; bool operator==(const Point& p1, const Point& p2) { return p1.x() == p2.x() && p1.y() == p2.y(); }

C++ Meine erste Klasse operator überladen, mit header

Anzahl der Antworten 2 Antworten
im neu in C++, obwohl ich weiß, dass der Allgemeine C-syntax. Ich habe versucht, erstellen Sie eine Klasse mit operator-überladung. Aber ich kann nicht ankommen es zu wirken. Gut teilweise kam es zu funktionieren. Arbeiten-operator überladen in

einfache c++: Wie, um eine überlastung der Multiplikation-operator, so dass float*myClass myClass und*float arbeitet

Anzahl der Antworten 1 Antworten
class MyClass; int main() { float a = 5; MyClass c1; MyClass c2 = a*c1; MyClass c3 = c1*a; } Wie kann ich die überlastung der operator "multiplizieren", so dass sowohl a*c1 und c1*a? Was Konstruktoren nicht

lvalue required as left operand of assignment - Arrays

Anzahl der Antworten 4 Antworten
Unten ist das code-snippet, wo der Fehler liegt, wird die Zeile a[i][j] = m[i][j] + w[i][j]; gibt einen Fehler zurück, lvalue required as left operand of assignment Ich kann nicht finden, eine Antwort, die gilt für arrays,

Überlastung von globalen operator new/delete in C++

Anzahl der Antworten 2 Antworten
Ich versuche, die überlastung der globalen operator new und delete, für die eine performance-sensible Anwendungen. Ich habe gelesen das Anliegen beschrieben http://www.informit.com/articles/article.aspx?p=30642&seqNum=3 und die Empfehlungen zur Verwendung von Intel TBB die Zuweisung http://www.intel.com/technology/itj/2007/v11i4/5-foundations/5-memory.htm Da bin ich überladen

Fehler beim überladen von operator (muß eine nichtstatische member-Funktion)

Anzahl der Antworten 2 Antworten
Schreibe ich Klasse string auf meinem eigenen. Und ich habe solchen code. Ich will einfach nur, um eine überlastung operator=. Das ist mein code und ich bekomme Fehler im letzten Teil des Codes. #include <iostream> #include <string.h>

Überladen von operator new für die Klasse

Anzahl der Antworten 1 Antworten
Wenn wir überlasten new-operator einer Klasse deklarieren wir die Funktion als member-Funktion. Für zB: class OpNew { public: OpNew() { cout << "OpNew::OpNew()" << endl;} void* operator new(size_t sz) { cout << "OpNew::new: " << sz <<