[Assembler] Assembler und c++

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von evercraft, 16. Januar 2010 .

Schlagworte:
  1. 16. Januar 2010
    Assembler und c++

    Hallo zusammen

    ich habe eine aufgabe bekommen, jedoch kann ich diese nicht lösen da ich mich mit c++ programmierung nicht auskenne... vielleicht kann mir ja einer von euch helfen und es mir kurz erklären
    danke schonmal im vorraus

    hier die aufgabe:

    Welchen Aufruf fügt ein C++ Compiler „stillschweigend“ ein wenn Sie eine
    Objektinstanz „by-value“ an eine andere Funktion oder Methode übergeben?

    Warum kann es folglich sinnvoll sein, Parameter „by-reference“ zu übergeben
    selbst wenn in Unterprogramm keine Veränderung dieses Parameters
    vorgesehen ist?
     
  2. 16. Januar 2010
    AW: Assembler und c++

    Guckst du HIER

    Greetz Jojo

    p.s.: Google wäre dein Freund gewesen
     
  3. 17. Januar 2010
    AW: Assembler und c++

    by value:
    Der Compiler übergibt eine Kopie, d.h. er ruft den Copy-Konstruktor (der - wenn nicht vorhanden - automatisch erstellt wird) des Objektes auf und übergibt die so erzeugte Kopie. Das Originalobjekt bleibt dabei unverändert und die Kopie wird nach dem Aufruf wieder zerstört.

    by reference:
    Der Compiler übergibt einen Pointer/Zeiger auf das Objekt, d.h. das Originalobjekt kann in der Funktion verändert werden. C++ bietet als Sprachkonstrukte dafür Pointer und zum anderen Referenzen.

    Vorteile von by reference:
    -Objekt kann von der Funktion verändert werden
    -Spart Zeit und Speicher, da nichts kopiert werden muss, bis auf den Pointer/die Referenz

    Daher: Alles was größer als int bzw. void* ist sollte als Zeiger oder Referenz übergeben werden, auch wenn es nicht verändert wird.
     
  4. 17. Januar 2010
    AW: Assembler und c++

    Genau, außerdem kann man ja Referenzen als const übergeben, dann hat die Funktion gar nicht die Möglichkeit, die Variable zu verändern, ohne vom Compile auf die Finger zu kriegen. Dann hat man sowohl den Vorteil der schnelleren Geschwindigkeit, als auch Sicherheit vor Manipulation.
     
  5. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.