Datein kopieren unter Linux - Segmentation fault
-
Bergmann89 schrieb:
@EOutOfResources: wie meinst du das?
Für Zeichen ketten nutzt man
std::stringstattconst char*. Für die Ausgabe nutzt manstd::coutstattprintf. Wieso? Beimstd::stringkann man keine Zugriffe auf Speicher, der nicht du besitzt durchführen. Undstd::coutist, im Gegensatz zuprintf, typsicher.Und lerne etwas über das Konzept "RAII".
-
EOutOfResources schrieb:
Für Zeichen ketten nutzt man
std::stringstattconst char*.Das ist aber mal zu Unrecht verallgemeinert...
-
yahendrik schrieb:
Das ist aber mal zu Unrecht verallgemeinert...
Du wirst mir keine drei Beispiele nennen können, wo meine von dir zitierte Aussage nicht gültig ist...
-
Hey,
eig benutz ich die strings. Weiß selber nich warum ich da nen Pointer übergeb. Werd das ma noch ändern.
Aber das mit dem RAII versteh ich nich. Am Anfang der Methode werden die Variablen initialisiert und die Datein geöffnet und am Ende werden die Datei geschlossen. Und die Freigabe von angelegten Variablen übernimmt doch C++ für mich (solange es keine Sachen sind die ich mit new angelegt hab) oder bin ich da auf dem Holzweg?MfG Bergmann.
-
Stringliterale
Dll-Interface
?Aber das reicht eigentlich schon. Auch in C++ hat der
const char*durchaus seine Daseinsberechtigung.
-
Bergmann89 schrieb:
Aber das mit dem RAII versteh ich nich.
Die beiden
close-Aufrufe werden vom DTor gemacht
.
-
yahendrik schrieb:
Stringliterale
Was ist damit? Die werden implizit kovertiert.
-
yahendrik schrieb:
Stringliterale
Dll-Interface
?Performance

-
Shade Of Mine schrieb:
Performance

lol, ich wusste, irgendwas hatte ich vergessen

Argh, Komma.
-
Erstelle die Streams auch alle erst so spät wie möglich und nicht alle am Anfang. Auch kann man Streams direkt im Konstruktor öffnen, womit man sich den open() Aufruf spart.
-
offline schrieb:
Erstelle die Streams auch alle erst so spät wie möglich und nicht alle am Anfang. Auch kann man Streams direkt im Konstruktor öffnen, womit man sich den open() Aufruf spart.
Dann kannst du aber auch gleich dazu erwähnen, dass Streams RAII können. Immer diese halben Wahrheiten

-
314159265358979 schrieb:
erwähnen, dass Streams RAII können.
Das habe ich schon gemacht. Er wollte mich wahrscheinlich einfach nicht wiederholen.