Heim > Artikel > Backend-Entwicklung > Kann C Daten unterschiedlichen Typs in einem einzigen Container speichern?
Frage:
Die STL-Container-Klassifizierungsgrafik legt nahe, dass es keinen STL-Container gibt sowohl variabler Größe als auch heterogen. Fehlt C eine Lösung zum Speichern von Daten verschiedener Typen?
Antwort:
Während C-Container normalerweise für die Aufnahme von Objekten eines einzigen Typs konzipiert sind, gibt es Möglichkeiten dazu verschiedene Datentypen speichern:
Codebeispiel:
<code class="cpp">#include <list> #include <boost/any.hpp> using boost::any_cast; typedef std::list<boost::any> many; int main() { many values; append_int(values, 10); append_string(values, "Hello"); if (is_int(values.front())) { int number = any_cast<int>(values.front()); std::cout << number << std::endl; } return 0; }</code>
Das obige ist der detaillierte Inhalt vonKann C Daten unterschiedlichen Typs in einem einzigen Container speichern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!