Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » int in Copyfile ?!?!

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: [ 1 ] > 2 <
010
17.06.2003, 14:30 Uhr
~0xdeadbeef
Gast


stringstream - das gefällt mir. Füg aber vor Str << i; noch

C++:
Str.str("");


ein.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
011
17.06.2003, 14:33 Uhr
~0xdeadbeef
Gast


Übrigens - was ISO-C++ angeht, ist das hier ne sehr gute Doku der STL: www.sgi.com/tech/stl/index.html

Für die iostream-Library schau ich meistens hier nach: www.cplusplus.com/ref/iostream/

Hoffe, du kannst damit was anfangen.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
012
17.06.2003, 15:07 Uhr
virtual
Sexiest Bit alive
(Operator)


Du kannst auch die Deklaration von ostringstream einfach in die Schleife ziehen...
--
Gruß, virtual
Quote of the Month
Ich eß' nur was ein Gesicht hat (Creme 21)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
013
17.06.2003, 15:16 Uhr
~0xdeadbeef
Gast


Geht natürlich auch, aber dann wird jedesmal wieder Speicher angefordert, Konstruktor ausgeführt, Destruktor ausgeführt und Speicher freigegeben - das kostet Rechenzeit.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
014
17.06.2003, 16:02 Uhr
virtual
Sexiest Bit alive
(Operator)


Naja, wenn es Dir um Performance geht, dann nutz doch einfach aus, daß die zahlen immer hrößer werden:

C++:
{
        std::ostringstream s;

        for(int i=0; i<10; ++i)
        {
                s<<i;
                std::cout<<s.str()<<std::endl;
                s.seekp(0,std::ios::beg);
        }
}


--
Gruß, virtual
Quote of the Month
Ich eß' nur was ein Gesicht hat (Creme 21)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
015
17.06.2003, 16:17 Uhr
ao

(Operator)



Zitat:
~0xdeadbeef postete
Geht natürlich auch, aber dann wird jedesmal wieder Speicher angefordert, Konstruktor ausgeführt, Destruktor ausgeführt und Speicher freigegeben - das kostet Rechenzeit.


Erstens stimmt das so nicht; die laufzeitmäßig "teure" Aktion ist das Belegen und Freigeben des Speichers, in das der Filename eingetragen wird und das Reinkopieren der Daten, und das wird in beiden Fällen gemacht. Der Default-c'tor ist dagegen vergleichsweise billig.

Zweitens ist der Code mit dem lokalen ostringstream-Objekt übersichtlicher und besser zu lesen. Es ist immer schlecht, wenn man sich merken muß, daß Str ein "überlebendes" Objekt ist, daß vor der Benutzung re-initialisiert werden muß. Sobald man genügend von diesen Kleinigkeiten im Kopf hat, fängt man an, welche zu vergessen. Daraus resultieren Programmierfehler, und die machen ein Projekt schnell richtig teuer.

Besser als solche "Mikro-Optimierungen" ist, das Programm übersichtlich zu designen, fertig zu bauen und wenn es läuft, zu profilen. Erst dann siehst du wirklich, wo wieviel Zeit verbraten wird und ob es überhaupt nötig ist zu optimieren und wenn ja, wo.

ao
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: [ 1 ] > 2 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: