Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Void-Datentyp | Weitere Datentypen und Konzepte
Practice
Projects
Quizzes & Challenges
Quizze
Challenges
/
C++-Datentypen

bookVoid-Datentyp

Swipe um das Menü anzuzeigen

Der Typ muss immer angegeben werden, da es sich um eine statisch typisierte Sprache handelt. Der Compiler muss den genauen Typ jeder Variablen kennen, um die richtige Menge an Speicher zu reservieren und die Typsicherheit zu gewährleisten. Ebenso muss er die Typen von Rückgabewerten und Parametern von Funktionen kennen.

Note
Hinweis

Eine statisch typisierte Sprache ist eine Sprache, in der der Datentyp einer Variablen explizit deklariert und vom Compiler überprüft wird.

main.cpp

main.cpp

copy
12345678910
#include <iostream> // Let's consider a simple example. // Imagine you need to create a function that logs something in console. // What type should it return? ___ log(std::string message) { std::cout << message; return ___; }

In diesem Fall ist kein spezifischer Rückgabetyp erforderlich; es könnte sich um int, double, float oder bool handeln. Für dieses Szenario spielt der genaue Typ keine Rolle. Was ist jedoch, wenn überhaupt nichts zurückgegeben werden muss?

Void als Rückgabetyp einer Funktion

Es gibt häufig Funktionen, bei denen scheinbar keine Rückgabe erforderlich ist, wie zum Beispiel:

main.cpp

main.cpp

copy
12345678
// Outputting information in console ___ log(std::string message) { std::cout << message; } // Updating values of variables ___ update(int& variable, int new_value) { variable = new_value; } // Calling another function ___ closeFile(std::fstream& file) { file.close(); }

In diesem Fall kann der Datentyp void verwendet werden. Der Datentyp void in der Programmierung kennzeichnet das Fehlen eines Wertes oder Typs. Er kann auf verschiedene Arten eingesetzt werden, dient bei Funktionen jedoch in der Regel dazu, anzugeben, dass eine Funktion keinen Wert zurückgibt.

main.cpp

main.cpp

copy
123456789101112
#include <iostream> void log(std::string message) { std::cout << message; return; } int main() { log("This is a void function!"); }

Hinweis

Das Schlüsselwort return wurde verwendet, jedoch ohne einen Wert zu übergeben. Das Schlüsselwort return kann in void-Funktionen auch weggelassen werden. Versuchen Sie, es im Beispiel zu entfernen.

Void als Zeiger

Void-Zeiger (void*) sind Zeiger, die keinem bestimmten Datentyp zugeordnet sind. Sie können auf beliebige Objekttypen zeigen, müssen jedoch vor der Verwendung in den entsprechenden Typ umgewandelt werden. Sie sind sehr nützlich, aber manchmal schwer zu verstehen.

main.cpp

main.cpp

copy
1234567891011121314
#include <iostream> int main() { int num = 10; // Here we are creating a void pointer // Now it can point to any variable of any data type // You can try changing the type of `num` from `int` to `float` void* ptr = &num; // To use this pointer, we need to cast it to the appropriate type // VVV int* intPtr = static_cast<int*>(ptr); std::cout << *intPtr << std::endl; // Output: 10 }

In diesem Beispiel ist ptr ein Void-Zeiger, der auf eine Ganzzahl (num) zeigt. Anschließend wird ptr in einen int*-Zeiger umgewandelt, um auf den Wert von num zuzugreifen und ihn auszugeben.

question mark

Was bedeutet die Verwendung von void als Rückgabetyp einer Funktion in C++?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 4. Kapitel 3

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

Abschnitt 4. Kapitel 3
some-alt