C++ Programm Ideen gesucht !

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • Werbung zur Unterstützung des Forums ( Bitte AddBlocker deaktivieren )

    • Für "Alltagsdinge" ist C++ glaube ich ein schlechtes Beispiel, da wenn du unterwegs bist eher zu deinem Smartphone/Tablet greifst, anstatt zu einem Laptop. Das Problem ist halt, mit C++ lassen sich keine Apps erstellen. Und Sprachen wie Java oder C# am besten dafür geeignet sind, wenn man Apps für den Alltag entwickeln will. Ich meine gucke dir am besten google.play an und lasse dich dort inspirieren :/
    • dowhile;319660 schrieb:

      Ein Spiel.


      Bäh. Weiterhin mit diesen trivialen Begründungen ("main() ist in einer Klasse", "const heißt final", ...) oder kam noch etwas handfestes hinzu?[/COLOR]


      Nachteile von Java (außer den hier genannten):
      - Kein explizites Zerstören von Objekten möglich. Dadurch ist der Nutzen von Destruktoren sehr eingeschränkt.
      - Schwache Semantik. "int i;" deklariert ein Objekt, während "MyClass mc;" einen Verweis auf ein Objekt deklariert.
      - Keine echten lokalen Objekte, außer bei eingebauten Typen.
      - Keine Möglichkeit, Operatoren zu überladen.
      - Keine Templates und daraus folgend viele Casts, kein Metaprogramming (man sehe sich nur boost oder loki an, was damit alles möglich ist!) und vermutlich auch viel doppelter Code im Projekt.
      - Wegen Garbage Collection ist das Laufzeitverhalten eines Programms schwer zu ermitteln geschweige denn zu garantieren. Dito Speicherverhalten.
      - Keine echte Mehrfachvererbung
      - Keine Unterscheidung zwischen Schnittstelle und Implementierung (*.hpp vs. *.cpp).

      Reicht dir das ?

      Ps. Du kannst ein Pferd dazu bringen zum Wasser zu gehen, aber du kannst es nicht dazu bringen davon zu trinken.
    • Willst du darüber diskutieren? (Ich hätte Lust dazu)

      - Kein explizites Zerstören von Objekten möglich. Dadurch ist der Nutzen von Destruktoren sehr eingeschränkt.

      Für was braucht man Destruktore? In den letzten 50 000 Zeilen Code hatte ich nie das Bedürfnis, einen zu verwenden.

      - Schwache Semantik. "int i;" deklariert ein Objekt, während "MyClass mc;" einen Verweis auf ein Objekt deklariert.

      Stimmt.

      - Keine echten lokalen Objekte, außer bei eingebauten Typen.

      Was sind "loakle Objekte"? Ich kenne den Begriff nicht und habe über Google nichts dazu gefunden.

      - Keine Möglichkeit, Operatoren zu überladen.

      Es ist doch toll, wenn ein Operator immer das selbe macht.
      Wenn du das schlecht findest, finde ich das etwas widersprüchlich zum zweiten Argument.
      Es ist schlecht, wenn "int i;" anders zu verstehen ist als "MyClass mc;", aber völlig i.O, wenn bei "a << 5" irgendwelche Bits im Speicher von "a" verschoben werden
      (geht das?), bei "b << 5" hingegen die "5" durch irgendeinen eigenen Algorithmus verarbeitet wird?

      - Keine Templates und daraus folgend viele Casts, kein Metaprogramming (man sehe sich nur boost oder loki an, was damit alles möglich ist!) und vermutlich auch viel doppelter Code im Projekt.

      Gibt es aber, nennt sich
      http://de.wikipedia.org/wiki/Generische_Programmierung_in_Java]Generics.

      - Wegen Garbage Collection ist das Laufzeitverhalten eines Programms schwer zu ermitteln geschweige denn zu garantieren. Dito Speicherverhalten.

      Der GC greift nur bei Objekten, die nicht mehr verwendet werden, d.h. auf das Laufzeitverhalten des Programms keinen Einfluss mehr nehmen. Inwiefern manipuliert der GC also dieses?
      Wieso muss ich mich in Java um das Speicherverhalten scheren?

      - Keine echte Mehrfachvererbung

      Mehrfachvererbung hat Vor- und Nachteile. Ich würde das daher als Unterschied und nicht als klarer Nachteil bestimmen.

      - Keine Unterscheidung zwischen Schnittstelle und Implementierung (*.hpp vs. *.cpp).

      Das ist auch ein Unterschied, aber wieso ist es ein Nachteil? Dort zu Unterscheiden ist in Java eben nicht notwendig.

      ---------------------------------------------------
      was ist den eurer Meinung nach die leichteste Programmiersprache? :D

      Java
    • Ich hab ehrlich gesagt keine Lust mich darüber zu unterhalten, aber was das Überladen von Operatoren betrifft kann man nur noch folgendes sagen.

      Mit Hilfe des Überladen von Operatoren können auf Objekte selbstdefinierter Klassen (fast) alle Operatoren von C++ mit einer neuen Bedeutung versehen werden.

      Natürlich hat das Overloading seine Tücken, z.B. unleserlichkeit, aber wenn man den Quellcode ausreichend kommentiert hat, behält man nach meiner Meinung ! Auch den Überblick.
    • Und wenn jeder Java-Programmierer die primitiven Datentypen kennt, weiß jeder, dass "int i;" etwas anderes als "MyClass mc;" ist, d.h. jeder behält den Überblick. Dann ist das deiner Meinung nach also auch ok (Weil du es als Nachteil aufgezählt hast)?

      Mir geht es weniger darum, ob man den Überblick behält; sondern darum, dass du bei Java die "schwache" Semantik kritisierst, zugleich C++ dadurch auszeichnest, dass die Semantik teilweise "überschrieben" werden kann.
    • Einige Sachen sind mir bei Java halt zu ungenau und das ist auch ein wichtiger Grund was mich davor abschreckt Java zu lernen.

      Und wenn man für eine größere Anwendung etliche Libs braucht, die bezüglich ihrer API alle keinem einheitlichen Standard folgen, kommt das deinem Bedürfnis nach Genauigkeit (hier gleichzusetzen mit Einheitlichkeit?) nach?
    • dowhile;319687 schrieb:

      Und wenn man für eine größere Anwendung etliche Libs braucht, die bezüglich ihrer API alle keinem einheitlichen Standard folgen, kommt das deinem Bedürfnis nach Genauigkeit (hier gleichzusetzen mit Einheitlichkeit?) nach?[/COLOR]


      Es ist ja nicht so das man die Bibliotheken immer neu herunterladen muss, aber dafür sind sie bis in das letzte Detail genau erklärt und es erleichtert mir viele Sachen.

      Und können wir irgendwann mal wieder B2T gehen ?...
    • Delinquenz;319693 schrieb:

      Java ist performancetechnisch nicht auf einem Level mit C++. Mehr muss man dazu, meines Erachtens nach, nicht sagen.

      Und welche Anwendung(en) hast du schon programmiert bzw. willst du irgendwann programmieren, die du aufgrund der schlechteren Performance nicht hättest mit Java programmieren können?