Wie 3 Werte an eine Funktion zurückgeben?



  • Gugelmoser schrieb:

    Doch, das ist genau richitg so. Die Größe eines Arrays muss ein konstanter Ausdruck sein und das ist n , da es const-spezifiziert ist und mit einem konstanten Ausdruck initialisiert wurde.

    const hat mit konstanten Ausdrücken erstmal nichts zu tun. Nicht alles, was const ist, ist auch ein konstanter Ausdruck.

    int i = 42;
    int const j = i; // const, aber kein konstanter Ausdruck
    

    Da im oben gegebenen Beispiel n ein konstanter Ausdruck ist, funktioniert es.



  • Gugelmoser schrieb:

    da es const-spezifiziert ist und mit einem konstanten Ausdruck initialisiert wurde.

    Bei constexpr ist immer garantiert, dass ihm ein konstanter Ausdruck zugewiesen wurde.



  • 314159265358979 schrieb:

    Gugelmoser schrieb:

    Doch, das ist genau richitg so. Die Größe eines Arrays muss ein konstanter Ausdruck sein und das ist n , da es const-spezifiziert ist und mit einem konstanten Ausdruck initialisiert wurde.

    const hat mit konstanten Ausdrücken erstmal nichts zu tun. Nicht alles, was const ist, ist auch ein konstanter Ausdruck.

    Habe ich auch nicht behauptet.



  • Gugelmoser schrieb:

    , da es const-spezifiziert ist

    Nein, hast du natürlich nicht. Es heißt übrigens qualifiziert.



  • Tja, ohne Bibliotheksfunktion läuft es wohl auf WriteConsole auf Windows bzw auf write bei dem Rest der Welt heraus. 🤡



  • Hallo Leute,

    mein Dozent sagte, es gänge mit Referenzparametern. Trotzdem bin ich mir noch nicht ganz im Klaren. Ich werde es aber einmal probieren.

    Grüße
    Kakashi



  • das haben wir dir doch auch gesagt.

    die frage war, wie die ausgabe ohne cout und bibliotheksfunktionen erfolgen sollte.



  • unskilled schrieb:

    die frage war, wie die ausgabe ohne cout und bibliotheksfunktionen erfolgen sollte.

    Das ist keine Frage. Ohne Bibliotheksfunktionen könntest du dir allerhöchstens selber ein ostream -Objekt basteln und das an den Ausgabestream koppeln (der wiederum auch eine Bibliotheksfunktion ist); das ist allerdings völlig unmöglich für einen Anfänger zu schaffen.



  • dummerweise mal wieder komplett fail deine antowrt: man braucht kein ostream-objekt zu basteln, da man die stream-eigenschaften nicht zwangsläufig braucht. aber ansonsten hast du den widerspruch super bemerkt...



  • Mit der Einschränkung wird nur gemeint sein, dass der Kram nicht innerhalb der Funktion sieb ausgegeben werden soll, sondern in main. Der Zweck der Übung scheint ja zu sein, call-by-reference zu lernen.


Anmelden zum Antworten