• Welche Sprache bevorzugt ihr ? 30

    1. AutoIt (20) 67%
    2. C++ (C PlusPlus) (10) 33%

    Hallo.
    Habe mir mal gedacht, ich mach ne C++ vs. AutoIt War.
    Hier wird C++ Code mit AutoIt Code verglichen.
    Ihr sollt entscheiden was ihr besser findet.

    Runde 1: Ausgabe eines Textes
    C++:

    Code
    #include <iostream>
    int main()
    {
       std::cout << "Hallo Welt!\n";
       System("PAUSE");
    }

    AutoIt:

    Code
    MsgBox(0, "Hallo", "Hallo Welt!")

    AutoIt ist hier wesentlich kürzer ^^

    Runde 2: Deklarierung
    C++:

    Code
    int var = ganze zahl
    bool var = boolschen Wert (true/false)
    float var = Kommazahl mit wenig Dezimalstellen
    double var = Kommazahl mit etwas mehreren Dezimalstellen
    long double var = Kommazahl mit 19 Dezimalstellen (maximum afaik)
    void var = Leerer Datentyp

    AutoIt:

    Code
    $var = Alles in einem

    Auch hier ist AutoIt wieder kürzer, aber sehr ungenau.

    Runde 3: Datentyp Konvertierung
    C++: (Wir wollen von Float nach Int konvertieren)

    Code
    float f = 3.14159;
    int i = static_cast<int>(f);

    AutoIt: (Wieder Float to Int)

    Code
    $float = 3.14159
    $int = Int($float)

    Dieses mal haben beide Sprachen die selbe Zeilenanzahl.
    Jedoch kann man mit static_cast in andere Datentyp konvertieren, ohne was anderes zu scheiben.
    Bsp. float f = 3.123456789; double myFloat = static_cast<double>(f);

    Runde 4: Simples GUI
    C++: Mit Visual C++ erstellt ^^
    Form1.h:

    Spoiler anzeigen

    Form.cpp:

    Spoiler anzeigen

    AutoIt:

    Spoiler anzeigen

    Runde 5: Eine Simple Animation | GDI+(AutoIt) vs. Dark GDK(C++)
    C++:
    Siehe Anhang Anim Dark GDK

    AutoIt:

    Spoiler anzeigen

    Runde 6: For und While
    C++:

    Spoiler anzeigen

    AutoIt:

    Ich hoffe ihr werdet abstimmen und eure meinung posten.
    Hoffentlich habt auch mal einen eindruck von C++ bekommen, falls ihr es nicht kanntet.

    Meine Persönliche empfehlung:
    AutoIt lernen, wirklich intensiv, dann C++.
    C++ ist sehr anspruchsvoll und ihr werdet eure Zeit brauchen.
    MfG. PrideRage

  • Von schreiben her ist AutoIt natürlich viel besser, von den Möglichkeiten, und der Geschwindigkeit ist C++ besser, man kann also nur bestimmte Aspekte vergleichen.
    In diesem Fall war ja nach dem Code gefragt, und da hat AutoIt ganz klar die Nase vorn. :thumbup:

  • Wenn schon, dann muss es im ersten Beispiel so sein:

    Code
    #include <Windows.h>
    int main()
    {
       MessageBox(0, "Hello, World!", "Hello", 0);
    }

    Zu Runde 2:
    Man kann einen Variablentyp schreiben, der wechseln kann.
    [Werbungmach]siehe Signatur[/Werbungmach]

    Zu Runde 3:
    Man kann auch

    Code
    int i= int(f);

    oder

    Code
    int i = (int)f;

    schreiben. Außerdem kann man auch direkt konvertieren indem man

    Code
    int i=f;

    schreibt, nur dann gibt der Compiler eine Warnung aus.


    Außerdem: In C++ kann man dank namespace leichter ordentlich schreiben (nur Microsoft hält sich nicht dran).
    Dann muss man nicht so komische Namen geben, wie die UDF-funktionen in AutoIT haben.
    C++ hat eine recht komplizierste aber wirksame Preaprozessorsprache.

  • hmm wenn ich das hier so sehe is c++ doch recht komplex

    ich habe mir autoit selber beigebracht aber mal schauen wie das bei c++ ist aber wenn dénn schon lerne ich java damt ich auch auf linux damit arbeiten kann


    //Edit: Was meint ihr kann man schon zu Autoit Programmiersprache sagen oder gilt das erst wenn der compiler fähiger ist

  • was glaube ich auch noch ncih gesagt wurde mit c++ kann man alles im pc ansprechen mit autoit nicht....
    Die Dlls lassen wir mal da raus.

  • was glaube ich auch noch ncih gesagt wurde mit c++ kann man alles im pc ansprechen mit autoit nicht....
    Die Dlls lassen wir mal da raus.

    Jep, DLLs haben ja nichts mit der Sprache zu tun, sonden mit dem Compiler.
    Mit C++ kann man nicht alles ansprechen, nur es gibt so viele Header, die auf alles zugreifen und besonders, wenn die Programme sehr groß sind, spart man viel Code.

  • das mit der dll war anders gemeint
    Sachen wozu autoit umbedingt ne dll braucht kan c++ auch so

  • Achso, C++ ruft aber auch oft DLLs auf. Oft kommen die Funktionen aus einer DLL (manchmal Assambler-DLL) werden aber ohne Dll-call oder so aufgerufen.
    Was mich manchmal stört ist, dass man in AutoIT keine Strings mit 0x00 drin haben kann, wobei das in C++ auch meistens Probleme macht.