Was ist hier falsch?



  • jo schöne scheisse, da haben wir hja glück das es nicht mehr classlibarys mit einbuchstabigen "namespaces" gibt...



  • C MFC
    T Borland
    Q QT

    anything else?



  • /me verleiht den "c-plusplus.net-Award für außergewöhnlich kreative bzw. spaßige Trolls" an <Die alte Dame>. 🙂

    Ich halte Klassen mit C-Präfix ehrlich gesagt mittlerweile auch für eine Unart, obwohl ich nie intensiver mit den MFC programmiert habe.

    Bashar: KClassname für KDE.

    [ Dieser Beitrag wurde am 19.05.2003 um 17:09 Uhr von nman editiert. ]



  • Original erstellt von Bashar:
    **C MFC
    T Borland
    Q QT

    anything else?**

    jo

    das "C" bei den MFC Klassen kommt von "class"

    das "T" bei Borland C++ Builder Klassen kommt davon, dass der C++ Builder seine Wurzeln in Borland Delphi hat und dort die ganzen Klassen als Typen ("type TList" oder "type TButton") angelegt wurden. Dies wurde dann beim C++ Builder grade beibehalten, da dieser die selbe VCL verwendet wie Delphi.

    Lediglich bei Qt und KDE stehen die Klassen "Q..." und "K..." für die Programmier API (z.B. QListView, QPushButton oder KHTML).



  • Original erstellt von Descartes:
    **
    das "T" bei Borland C++ Builder Klassen kommt davon, dass der C++ Builder seine Wurzeln in Borland Delphi hat**

    Die T-Geschichte gabs aber schon lange vor Delphi in Turbo Vision.



  • ehrlich gesagt, ich benutze sowohl einen eigenen namespace, als auch einen präfixbuchstaben, damit ich z.b. schreiben kann: FList List und nicht List list.
    aber von den genannten präfixen (C, T, Q, K) halte ich abstand, weil nahezu jeder programmierer, der schon etwas länger dabei ist, diese präfixe schon mindestens einmal verwendet, und mindestens schon 100erte mal gelesen hat.
    am sichersten ist allerdings, wenn man einfach nur klassennamen groß schreibt und instanzen klein! ich frage mich eh, woher das kommt, dass der BCB und MSVCC ihre variablen standardmäßig groß schreiben...



  • Original erstellt von Bashar:
    Die T-Geschichte gabs aber schon lange vor Delphi in Turbo Vision.

    Schon klar. Delphi ist ja auch "nur" Object Pascal und hat das "type T..." von Borland Pascal bzw. von deren TurboVision geerbt.

    BTW: Bei Borland Pascal haben viele Tutoren und Profs den Aspiranten beigebracht eigene Datentype die mit "type" definiert wurden mit "T..." und Pointer "P..." zu benennen. Beim Umstieg auf C bzw. C++ wurde von den selben Leuten dann empfohlen, eigene Klassen "C..." zu nennen. Heute liese sich darüber streiten, in wie fern dies sinnvoll ist. Damals wurde es halt so gemacht. Inzwischen wird von C++ Profs empfohlen, alles in einen eigenen Namespace zu packen um eine Namespace Pollution zu vermeiden.



  • Inzwischen wird von C++ Profs empfohlen, alles in einen eigenen Namespace zu packen um eine Namespace Pollution zu vermeiden.

    Huh? 😕

    Na da fehlt doch wohl mindestens ein Wort 😃



  • Es war ja nur ein gut gemeinter rat.

    Es gab hier schon mal eine lange Diskusion im FOrum da sich jemand einen eigenen CString gebaut hat und der rest an den des VC bzw. der MFC gedacht hat.
    Hat rund 20 Posts gekostet bis das geklärt war.

    Anwender der CList können in die irre geführt werden. Man wird nie vermeiden können das man Namensgleichheit mit anderen hat, kann aber weit verbreitete Namensgebungen von den man weiß meiden.



  • Original erstellt von Shade Of Mine:
    **Würdest du:
    namespace mastah
    {
    namespace std
    {
    class list {};
    }
    }
    **

    Nö, würd ich nicht. Ich hab ja auch nicht davon geredet wie sinnvoll/-los so etwas ist (s.o.). Ich meinte nur man sollte es jedem selbst überlassen, eben weil ich befürchtet habe dass wieder so eine 0-8-15-Diskussion über Prefixe und sinnvolle Namensgebung entsteht. Dass es verwirrt ist klar, aber auch außerhalb der MFC verwenden viele Leute das C als Prefix für class. Sei es aus Unwissenheit woher es stammt oder aus purer Gewöhnung an das Arbeiten mit den MFC (wie bei mir 😉 ).


Anmelden zum Antworten