<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="http://update.proggen.org/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="http://update.proggen.org/feed.php">
        <title>proggen.org frameworks:qt:general</title>
        <description></description>
        <link>http://update.proggen.org/</link>
        <image rdf:resource="http://update.proggen.org/lib/tpl/proggenY/images/favicon.ico" />
       <dc:date>2026-04-20T02:47:03+0200</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=frameworks:qt:general:algorithms&amp;rev=1663868367"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=frameworks:qt:general:control&amp;rev=1663868367"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=frameworks:qt:general:debug&amp;rev=1663868367"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=frameworks:qt:general:i18n&amp;rev=1663868367"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=frameworks:qt:general:implicitsharing&amp;rev=1663868367"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=frameworks:qt:general:parents&amp;rev=1663868367"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=frameworks:qt:general:qobject&amp;rev=1663868367"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=frameworks:qt:general:rc&amp;rev=1663868367"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=frameworks:qt:general:string&amp;rev=1663868367"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="http://update.proggen.org/lib/tpl/proggenY/images/favicon.ico">
        <title>proggen.org</title>
        <link>http://update.proggen.org/</link>
        <url>http://update.proggen.org/lib/tpl/proggenY/images/favicon.ico</url>
    </image>
    <item rdf:about="http://update.proggen.org/doku.php?id=frameworks:qt:general:algorithms&amp;rev=1663868367">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:27+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>frameworks:qt:general:algorithms</title>
        <link>http://update.proggen.org/doku.php?id=frameworks:qt:general:algorithms&amp;rev=1663868367</link>
        <description>Algorithmen

qDeleteAll()

Container die Zeiger enthalten können mittels qDeleteAll() den reservierten Speicher freigeben. Dabei werden aber nicht die Elemente aus dem Container entfernt, sondern lediglich der delete-Operator auf jedes Element angewandt.</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=frameworks:qt:general:control&amp;rev=1663868367">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:27+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>frameworks:qt:general:control</title>
        <link>http://update.proggen.org/doku.php?id=frameworks:qt:general:control&amp;rev=1663868367</link>
        <description>Kontrollstrukturen

Qt ist nicht nur ein Framework zu Anwendungsenwicklung, es erweitert auch C++ um die Kontrollstrukturen foreach und forever.

foreach

foreach kann dazu verwendet werden über einen Container zu iterieren. Man kann also in folgendem Code die</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=frameworks:qt:general:debug&amp;rev=1663868367">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:27+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>frameworks:qt:general:debug</title>
        <link>http://update.proggen.org/doku.php?id=frameworks:qt:general:debug&amp;rev=1663868367</link>
        <description>Debug-Ausgaben

Auch in Programmen mit grafischer Oberfläche sind Debug-Ausgaben unerlässlich. Da es recht aufwendig wäre komplexe Objekte wie Container oder Uhrzeiten auszugeben, bietet Qt dafür fertige Lösungen an.

FIXME</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=frameworks:qt:general:i18n&amp;rev=1663868367">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:27+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>frameworks:qt:general:i18n</title>
        <link>http://update.proggen.org/doku.php?id=frameworks:qt:general:i18n&amp;rev=1663868367</link>
        <description>Internationalisierung

In Qt ist es relativ einfach eine Anwendung zu übersetzen. Unterstützt wird man dabei vom Qt-Linguist.

Strings

Um ein Programm in mehreren Sprachen verfügbar zu machen, müssen alle zu übersetzenden Strings an die Methode QObject::tr()</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=frameworks:qt:general:implicitsharing&amp;rev=1663868367">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:27+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>frameworks:qt:general:implicitsharing</title>
        <link>http://update.proggen.org/doku.php?id=frameworks:qt:general:implicitsharing&amp;rev=1663868367</link>
        <description>Implicit Sharing

Definition

Das Kopieren von großen Objekten wie Bildern oder Strings ist sehr aufwendig. Um unnötigen Overhead zu vermeiden, verwenden viele Qt-Klassen Implicit Sharing. 

Dabei wird anstatt des gesamten Objekts ein Zeiger auf die Daten kopiert (</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=frameworks:qt:general:parents&amp;rev=1663868367">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:27+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>frameworks:qt:general:parents</title>
        <link>http://update.proggen.org/doku.php?id=frameworks:qt:general:parents&amp;rev=1663868367</link>
        <description>Eltern-Objekte und ihr Einfluss

QObject-Objekten kann über den Konstruktor bzw. die Methode setParent() ein Elternobjekt zugewiesen werden. Dadurch ändern sich zwei wichtige Dinge für das Kindobjekt.

Freigabe von Speicher

Wenn ein QObject-Objekt gelöscht wird, löscht es automatisch seine Kinder. Damit kann man Speicherlecks verhindern, es kann aber auch zu scheinbar unerklärlichen Abstürzen kommen, wenn man sich dessen nicht bewusst ist. Im folgenden Beispielprogramm erstellen wir eine Eltern…</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=frameworks:qt:general:qobject&amp;rev=1663868367">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:27+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>frameworks:qt:general:qobject</title>
        <link>http://update.proggen.org/doku.php?id=frameworks:qt:general:qobject&amp;rev=1663868367</link>
        <description>QObject

Ähnlich wie in Java ist QObject die Elternklasse (fast) aller Qt-Klassen. Beispiele für die wenigen Ausnahmen sind Container und geometrische Formen. Es ermöglicht eines der wichtigsten Konzepte von Qt, nämlich Signale und Slots, die wir später noch kennenlernen werden.

Die QObject</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=frameworks:qt:general:rc&amp;rev=1663868367">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:27+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>frameworks:qt:general:rc</title>
        <link>http://update.proggen.org/doku.php?id=frameworks:qt:general:rc&amp;rev=1663868367</link>
        <description>Verschoben nach build:rc</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=frameworks:qt:general:string&amp;rev=1663868367">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:27+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>frameworks:qt:general:string</title>
        <link>http://update.proggen.org/doku.php?id=frameworks:qt:general:string&amp;rev=1663868367</link>
        <description>Strings

Bevor wir nun mit der Erstellung von grafischen Oberflächen beginnen, kommen wir zu einem sehr allgemeinen, aber auch sehr wichtigen Thema: Die Verwaltung von Texten in Qt.

Qt bietet eine eigene Klasse mit dem Namen QString um Zeichenketten abzuspeichern. Viele werden sich wundern wozu das gut sein soll, da</description>
    </item>
</rdf:RDF>
