Breymann. C++ Einführung und professionelle Programmierung
Breymann. C++ Einführung und professionelle Programmierung Breymann. C++ Einführung und professionelle Programmierung
7.2 Klassenspezifische Daten und Funktionen Klassenspezifische Daten sind Daten, die nur einmal für eine Klasse existieren. Sie sind nicht an einzelne Objekte, sondern an alle Objekte einer Klasse gleichzeitig gebunden. Dies können Verwaltungsdaten wie die Anzahl der Objekte sein, oder auch Bezugsdaten, die für alle Objekte gelten. Klassenspezifische Funktionen führen Aufgaben aus, die an eine Klasse, nicht aber an ein Objekt gebunden sind. Beispiel Die Klasse nummeriertesObjekt hat die Aufgabe, jedem Objekt eine unverwechselbare Seriennummer mitzugeben und über die aktuelle Anzahl aktiver Objekte Buch zu führen. Breymann C++, c○ Hanser Verlag München Inhalt ◭◭ ◭ ◮ ◮◮ 274 zurück Ende
• Die static-Funktion Anzahl() soll die Anzahl der Objekte dieser Klasse zurückgeben und ist daher objektunabhängig. • Die Funktion Seriennummer() bezieht sich im Gegensatz dazu nur auf ein einzelnes Objekt. • Die öffentliche Variable Testmodus dient dazu, während der Laufzeit eines Programms den Testmodus für bestimmte Programmabschnitte aus- oder einzuschalten, um auf der Standardausgabe Entstehung und Vergehen aller Objekte zu dokumentieren. Breymann C++, c○ Hanser Verlag München Inhalt ◭◭ ◭ ◮ ◮◮ 275 zurück Ende
- Seite 223 und 224: char-Arrays // Definition und Initi
- Seite 225 und 226: Beispiele: Schleifen mit Strings St
- Seite 227 und 228: Strings kopieren char* original = "
- Seite 229 und 230: 6.4 Dynamische Datenobjekte new: Er
- Seite 231 und 232: Dynamisch erzeugte Struktur Erzeugu
- Seite 233 und 234: 6.4.1 Freigeben dynamischer Objekte
- Seite 235 und 236: • Mit new erzeugte Objekte unterl
- Seite 237 und 238: 6.5 Mehrdimensionale C-Arrays 6.5.1
- Seite 239 und 240: Arrays als Funktionsparameter C-Arr
- Seite 241 und 242: void Tabellenausgabe2D(int (*T)[3],
- Seite 243 und 244: Funktion für statische zwei-dimens
- Seite 245 und 246: Aufgaben 6.1 Die Äquivalenz von *(
- Seite 247 und 248: 6.5.2 Dynamisch erzeugte mehrdimens
- Seite 249 und 250: Eine dreidimensionale Matrix ist ei
- Seite 251 und 252: Feld von Zeigern auf Zeilen anlegen
- Seite 253 und 254: 6.6 Binäre Ein-/Ausgabe = unformat
- Seite 255 und 256: Lesen einer Datei double.dat mit do
- Seite 257 und 258: void upcase(char* s) { // In der AS
- Seite 259 und 260: 6.7.2 Gefahren bei der Rückgabe vo
- Seite 261 und 262: int main() { int a = 1700, b = 1000
- Seite 263 und 264: #include using namespace std; #incl
- Seite 265 und 266: 6.9 this-Zeiger • this ist ein Sc
- Seite 267 und 268: 7. Objektorientierung 2 - eine Stri
- Seite 269 und 270: const char& at(std::size_t position
- Seite 271 und 272: 7.1.1 friend-Funktionen Optionen f
- Seite 273: 3. friend-Funktion Falls es aus Lau
- Seite 277 und 278: Implementation der Klasse nummerier
- Seite 279 und 280: Der Kopierkonstruktor hat hier eine
- Seite 281 und 282: Der Destruktor vermerkt, dass es nu
- Seite 283 und 284: Anfang eines neuen Blocks { nummeri
- Seite 285 und 286: 7.2.1 Klassenspezifische Konstante
- Seite 287 und 288: template class simpleStack { publi
- Seite 289 und 290: • Der Datentyp T steht für einen
- Seite 291 und 292: cout
- Seite 293 und 294: 7.3.2 Stack mit statisch festgelegt
- Seite 295 und 296: Nur die Deklarationen in einem Anwe
- Seite 297 und 298: 8. Vererbung • Eigenschaften, die
- Seite 299 und 300: Die Unterklasse erbt von der Oberkl
- Seite 301 und 302: Jedes Objekt ObjA vom Typ A (=abgel
- Seite 303 und 304: Klasse GraphObj #ifndef graphobj_h
- Seite 305 und 306: Die Entfernung zwischen 2 GraphObj-
- Seite 307 und 308: 8.1 Vererbung und Initialisierung I
- Seite 309 und 310: Vererbung von Zugriffsrechten Regel
- Seite 311 und 312: Oberklasse wird mit der Zugriffsken
- Seite 313 und 314: 8.3 Code-Wiederverwendung In den ab
- Seite 315 und 316: 8.4 Überschreiben von Funktionen i
- Seite 317 und 318: Am Beispiel der Flächenberechnung
- Seite 319 und 320: 8.5.1 Virtuelle Funktionen Wirkung
- Seite 321 und 322: cout
- Seite 323 und 324: GrOptr = &GrO; // Zeiger auf GrO ri
• Die static-Funktion Anzahl() soll die Anzahl der Objekte dieser<br />
Klasse zurückgeben <strong>und</strong> ist daher objektunabhängig.<br />
• Die Funktion Seriennummer() bezieht sich im Gegensatz dazu<br />
nur auf ein einzelnes Objekt.<br />
• Die öffentliche Variable Testmodus dient dazu, während der Laufzeit<br />
eines Programms den Testmodus für bestimmte Programmabschnitte<br />
aus- oder einzuschalten, um auf der Standardausgabe Entstehung<br />
<strong>und</strong> Vergehen aller Objekte zu dokumentieren.<br />
<strong>Breymann</strong> <strong>C++</strong>, c○ Hanser Verlag München<br />
Inhalt ◭◭ ◭ ◮ ◮◮ 275 zurück Ende