Im Herzen von Wien

    Hauptquartier

    Löwengasse 14 / Lokal 2

    1030 Wien, Österreich

    Folge uns auf

    Code modularisieren mit Include

    Um Unübersichtlichkeit zu vermeiden und die Wartbarkeit zu verbessern, profitieren Quantenprogramme von Modularität. Erreicht wird dies, indem man ein Programm in separate Dateien aufteilt. OpenQASM unterstützt dieses Vorgehen mit dem Schlüsselwort include, mit dem Sie nahtlos auf die Inhalte externer Dateien zugreifen können. Dieses Kapitel führt Sie durch die Verwendung des Schlüsselworts include in OpenQASM.

    Die Include-Anweisung

    In OpenQASM bindet die Anweisung include die Inhalte einer externen Datei ein und behandelt sie als Teil der Hauptdatei. Dieses Vorgehen ähnelt dem Kopieren und Einfügen des Inhalts der eingebundenen Datei an der Stelle der Anweisung include.

    So binden Sie eine Datei namens "filename.ext" ein:

    include "filename.ext";
    

    Anwendungsbeispiel

    Angenommen, Sie haben eine Datei namens headerfile:

    // Common definitions and setups
    statement1;
    statement2;
    

    Und Ihre Hauptprogrammdatei myprogram:

    include "headerfile" // Includes "headerfile" here
    statement3;
    statement4;
    

    Nach dem Einbinden verhält sich myprogram so, als enthielte es:

    // "headerfile" contents followed by "myprogram" contents
    statement1;
    statement2;
    statement3;
    statement4;
    

    Hinweis: Liegt die eingebundene Datei nicht im selben Verzeichnis, muss der Pfad relativ zum aktuellen Arbeitsverzeichnis angegeben werden.

    Experiment: Import von qelib1.inc

    Die Datei qelib1.inc ist für die OpenQASM-Programmierung unverzichtbar, da sie Definitionen für viele Standard-Quantengatter enthält. Sie in Ihr Programm einzubinden ist unkompliziert. 12345

    // PhotonQ Experiment: Importing qelib1.inc [^5]
    OPENQASM 2.0;           // Declares the version of OpenQASM [^1]
    include "qelib1.inc";   // Brings in the standard gate definitions [^2]
    
    // Quantum register declaration
    qreg qubits[2]; // Defines a quantum register with two qubits [^3]
    
    // Quantum gate application
    h qubits[0]; // Applies a Hadamard gate to the first qubit [^4]
    

    Durch das Einbinden von qelib1.inc6 haben Sie Zugriff auf eine Vielzahl von Quantenoperationen, die Sie in Ihren Quantenschaltkreisen verwenden können.

    Weitere Informationen zur Datei qelib1.inc finden Sie hier:

    • Dokumentation zu qelib1.inc

    Footnotes

    1. Dokumentation zum Versions-String

    2. Dokumentation zu Include

    3. Dokumentation zu Quantenregistern

    4. Dokumentation zum Hadamard-Gatter

    5. Experiment: Import von qelib1.inc

    6. Dokumentation zu qelib1.inc

    Syntax
    Register

    Links

    GitHub

    Telegram

    Facebook

    Instagram

    Impressum

    Copyright © 2024 Netsnek, Florian Herbert Kleber IT & Werbeagentur Nico Schett. All rights reserved.