Statisches Deklarieren eines 2D-Arrays als Klassendatenmitglied
In C kann eine Klasse ein 2D-Array als enthalten Datenelement. Allerdings wird zum Erstellen dieser Arrays normalerweise eine dynamische Speicherzuweisung verwendet. Um dies zu vermeiden und eine zusammenhängende Speicherzuweisung zu erreichen, kann man erwägen, das Array statisch zu deklarieren.
Ein statisch deklariertes 2D-Array innerhalb einer Klasse kann mit einem benutzerdefinierten Konstruktor initialisiert werden. Hier ist ein Beispiel:
class Grid { public: unsigned NR, NC; double Coordinates[NR][NC]; Grid(unsigned rows, unsigned columns) : NR(rows), NC(columns) {} };
Diese Klasse definiert ein 2D-Array Koordinaten mit den Dimensionen NR und NC. Der Konstruktor initialisiert NR und NC, wenn das Objekt erstellt wird.
Während es möglich ist, ein 2D-Array statisch in C zu deklarieren, ist es wichtig zu beachten, dass die Größe des Arrays zur Kompilierungszeit bekannt sein muss . Dies kann in manchen Szenarien eine Einschränkung darstellen.
Ein alternativer Ansatz besteht darin, einen Vektor von Vektoren (std::vector
Das obige ist der detaillierte Inhalt vonWie kann ich ein 2D-Array statisch als C-Klasse-Datenelement deklarieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!