C-string schneller als std::string?



  • Die Messung, die Du jetzt machst ist auch unfair: std::strlen gegen std::string::length... das eine berechnet den Wert am Anfang, wenn Du noch keine Zeitmessung machst und das andere muß später ackern.

    Findet ihr's eigentlich nicht merkwürdig, wenn ihr bei so grundlegenden Sachen Performance-Unterschiede feststellt? Mein erster Impuls ist nachzuschauen, was da wohl schief laufen könnte.



  • Die Messung, die Du jetzt machst ist auch unfair: std::strlen gegen std::string::length... das eine berechnet den Wert am Anfang, wenn Du noch keine Zeitmessung machst und das andere muß später ackern.

    Naja, das hängt von der Implementierung von std::string ab.

    Aber wie gesagt, die Tests sagen eh nichts aus, da in der Praxis eh mit den Strings anders umgegangen wird. Und selbst wenn eine Lösung langsamer als die andere seien sollte, macht das in einem normalen Programm keinen großen Unterschied 🙄

    Immer diese Micro-Optimierung 🙂



  • Mir ging es ja auch nicht ums microoptimiren. Ich wollte nur, dass ich nächstes Mal wo einer behauptet C-Strings seinen schneller was Stichfestes in der Hand habe.



  • Irgendwer schrieb:

    Mir ging es ja auch nicht ums microoptimiren. Ich wollte nur, dass ich nächstes Mal wo einer behauptet C-Strings seinen schneller was Stichfestes in der Hand habe.

    du musst eben nur lange genug an deiner Benchmark rumdrehen, damit sie die Ergebnisse erziehlt, die du haben willst 😉


Anmelden zum Antworten