Du meinst #pragma mark?
Funktioniert bei mir.
seltsam, bei mir macht der sowas:
Du meinst #pragma mark?
Funktioniert bei mir.
Original von johannesauer
Wenn an einem Stromkasten die Warnung hängt: 2Vorsicht Starkstrom" und jemand dennoch mit seinen Händchen reinpackt, nennst du das versehentlich?
Kannst du mir kurz mal Absicht definieren?
Ich fände es einfach schöner, wenn Methoden, genau wie Members, mit @protected zu kennzeichnen wären. Das wäre konsistent, und ein Error ist besser als ne Warnung.
Original von johannesauer Und warum das nicht so ist verstehe ich nicht.
Original von johannesauerSind Extensions eigentlich was neues in Obj-C 2.0? Mir kommt das Extensions Konzept eher wie ein Notbehelf vor...das ist alles.
Original von johannesauerInsgesamt kommt mir Obj-C und Cocoa sehr offen vor. Ich kenne mich mit den Konzepten nicht gut genug aus, und das IST sicher Teil des Konzeptes.
Original von johannesauerEin Beispiel ist z.B. KVC. Da muss man auch erst sagen, das man NICHT auf die Members zugreifen darf...aber wie gesagt, die Apple Jungs sind ja nicht doof, das hat sicher einen Sinn.
Original von johannesauer
Du meinst #pragma mark?
Funktioniert bei mir.
seltsam, bei mir macht der sowas:
Ist die Datei ohne Warnungen kompilierbar?
Original von Objcler
Extensions bzw. Categories gibts schon immer. Neu in 2.0 sind anonyme Categories bzw. class continuations. Das "Konzept" wird ja nicht nur für "private" Methoden genutzt sondern auch für andere Dinge, die sehr sinnig sind.
Du kannst in den Build-einstellungen definieren, dass Warnungen vom Compiler wie Fehler behandelt werden: Dann kompiliert Xcode bei Warnungen nicht fertig.
Umgehen kannst du das dennoch, indem du eben diese "Runtime"-Tricks nutzt.
Original von johannesauer
Ist die Datei ohne Warnungen kompilierbar?
ja ist sie. Hier die syntax:
#pragma mark blablabla
Original von johannesauer
Gibt es denn Dokumentation über die Runtime? An sich mag ich Objective-C sehr gerne (auch wenn das hier vielleicht anders ankommt), aber ich würde gerne verstehen warum manche Dinge sind wie sie sind.
Gruss,
Johannes
Original von johannesauer
aber ich würde gerne verstehen warum manche Dinge sind wie sie sind.
kmr schrieb:
Ach, Du bist auch so ein leichtgläubiger Zeitgenosse, der alles glaubt, was irgendwelche Typen vor sich hin brabbeln. :-P
Original von johannesauer
Du meinst #pragma mark?
Funktioniert bei mir.
seltsam, bei mir macht der sowas:
Original von macmoonshine
Original von johannesauer
Du meinst #pragma mark?
Funktioniert bei mir.
seltsam, bei mir macht der sowas:
Das ist kein Fehler. Du hast in den Einstellungen unter Code Sense: Sort list alphabetically eingestellt. Dann lassen sich die Markierungen nicht mehr ordentlich in der Liste anzeigen.
Original von Amin Negm-Awad
Die kann denn ohne Pimpl ein User versehentlich eine private Methode aufrufen?
Original von zermelo
Original von Amin Negm-Awad
Die kann denn ohne Pimpl ein User versehentlich eine private Methode aufrufen?
Indem man sie im Header deklariert (was man ja eigentlich nicht tun sollte bzw. auch gar nicht braucht). Manchmal sind Prototypen ganz gut, und die alle am Anfang der Implementation zu haben ist auch nicht so schön oder?
Original von zermelo
Original von Amin Negm-Awad
Die kann denn ohne Pimpl ein User versehentlich eine private Methode aufrufen?
Indem man sie im Header deklariert (was man ja eigentlich nicht tun sollte bzw. auch gar nicht braucht). Manchmal sind Prototypen ganz gut, und die alle am Anfang der Implementation zu haben ist auch nicht so schön oder?
Original von gritsch
was haben PRIVATE methoden in einem prototyp zu suchen...?
Original von zermelo
Original von gritsch
was haben PRIVATE methoden in einem prototyp zu suchen...?
Sorry, ich weiss nicht, wie man das in Objective-C nennt. Ein Prototyp ist in C/C++ eine Vorab-Deklaration einer Methode.
Ich weiss gar nicht, wie man soetwas in Objective-C macht, ganz so einfach scheint das nicht.
Nimm folgendes Beispiel und stell Dir vor, beide Methoden sollen privat sein:
Da beide voneinander abhängen, liefert der Compiler immer eine Warnung, dass die Klasse (in der oben beschriebenen Reihenfolge) evtl. nicht auf methodeB reagiert.
Eine Lösung wäre eben, beide Methoden im Header zu deklarieren -- wo ja aber gesagt wurde, dass man das mit privaten Methoden nicht machen soll.