Klasse - Methodendeklaration



  • volkard schrieb:

    CStoll schrieb:

    Aus Sicht eines Verwenders der Klasse würde ich die erste bevorzugen.

    Echt? Parameterlisten ohne Parameternamen?
    Sag das nochmal.

    Klar doch - das bietet mir mehr Raum ür Interpretationen 😃

    Nein ernsthaft: Du hast mich erwischt, ich meinte natürlich die andere Variante.



  • C++ kennt keine Methoden, nur Memberfunktionen!



  • 314159265358979 schrieb:

    C++ kennt keine Methoden, nur Memberfunktionen!

    Doch, das sind auch Methoden.



  • Falsch. Memberfunktionen sind Funktionen, bei denen this als erster Parameter implizit übergeben wird. Methoden können auch x-beliebige andere Objekte sein.



  • Hast du denn mal ein Beispiel für etwas, was zwar eine Memberfunktion, aber keine Methode (oder umgekehrt) ist?



  • Dieses Beispiel kann es nicht geben. C++ hat keine Methoden, genauso wie andere Sprachen keine Memberfunktionen haben.



  • 314159265358979 schrieb:

    Dieses Beispiel kann es nicht geben. C++ hat keine Methoden, genauso wie andere Sprachen keine Memberfunktionen haben.

    Aus welchem Buch hast Du das? (Für die Blacklist)



  • 😃 Ich suche mal den Artikel, kleinen Moment.

    Edit: Yay, gefunden! Klick



  • 314159265358979 schrieb:

    😃 Ich suche mal den Artikel, kleinen Moment.

    Edit: Yay, gefunden! Klick

    Er redet irre. Gibt es eigentlich static member functions, also member functions, die keinen geheimen this-Pointer übergeben bekommen? Sind das danbn Methoden?

    Es ist nicht notwendig, ein neues Wort zu erfinden, nur um auf ein Implementierungsdetail von C++ hinzuweisen, zumal genau dieses Detail im Standard nicht garantiert wird und C++-Member-Functions innendrin doch genauso funktionieren könnten wie Methoden in Eiffel oder Java.

    Leider spricht er englich, das macht ihn unglaublich glaubwürdig.
    Daher kopiere ich mal den ersten commment:

    First of all. After compilation all code is transformed into assembly, which is raw machine code with no human-friendly structure.

    That said, why are you looking at the implementation of the concept after we hit the "compile" button?

    In my opinion, you're clearly confusing the OO concept, with the way it is implemented.

    The concept of a property is a characteristic of an object. A method, is simply it's action. In what sense member function are not methods and data members are not properties?

    Ok, we do have more fancy implemetations in other languages, but their implementations mostly implement syntax suggars, optimization techniques or even have other concerns like reflection support.

    This remember me a classical question my teacher asked me in the computer science course, several years ago: "What is the difference between polymorphism and virtual methods?"



  • 314159265358979 schrieb:

    C++ kennt keine Methoden, nur Memberfunktionen!

    Keine Methoden im Sinne von irgendwelchen abstrakt gehaltenen Definitionen einzelner Autoren von Büchern über OOP-Konzepte. Was im hiesigen Kontext völlig irrelevant ist. Du darfst es dir so vorstellen, dass im C++-Kontext die allgemein anerkannte Definition der C++-Community (Methode = Memberfunktion) mehr wiegt als die von irgendwelchen provokanten Artikeln, die du in der letzten Woche gelesen hast. Natürlich weißt du das, ich geh mal davon aus, dass du nicht ganz so ignorant bist, wie du dich manchmal gibst, sondern wie üblich nur provozieren möchtest.
    Deshalb bitte back to topic.



  • Wahrscheinlich wurde er im ##C++ Channel auf Freenode für "Methode" geflamed... die machen das nämlich verdammt gerne :D.



  • Quakenet ftw 🙄
    Und ja, B2T. <.<


Anmelden zum Antworten