Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

10.02.2008, 19:11

private und public klassen

verstehe den unterschied nit wirklich o.O
kann mir bitte einer einen code schreiben wo man mit public klasse arbeitet, und einen code wo eine private klasse ist, sodass man den unterschied und evtl. vorteile (sofort) erkennt. wäre euch sehr dankbar

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

2

10.02.2008, 19:28

Mich würde erstmal Code interessieren, der mir beispielhaft erklärt, was denn genau eine public und was eine private Klasse ist... ;)

Helmut

5x Contest-Sieger

Beiträge: 692

Wohnort: Bielefeld

  • Private Nachricht senden

3

10.02.2008, 20:17

Klassen können in C++ nicht privat oder public sein, man kann höchstens von einer Klasse entsprechend erben. Meinst du das? Falls ja, eigentlich reicht es als Anfänger immer public zu erben. Privat zu erben macht nur sehr selten Sinn.

Ciao
Sei stets geduldig gegenüber Leuten, die nicht mit dir übereinstimmen. Sie haben ein Recht auf ihren Standpunkt - trotz ihrer lächerlichen Meinung. (F. Hollaender)

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

4

10.02.2008, 20:55

Zitat von »"Helmut"«

Klassen können in C++ nicht privat oder public sein


Hmmm, naja doch, wenn mans so betrachtet:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class A
{
private:

  class B
  {
  };

public:

  class C
  {
  };

};



Aber ich weis trozdem nicht ganz was er jetzt genau wissen willt ^^

Terep

Frischling

Beiträge: 46

Wohnort: Region Hannover

  • Private Nachricht senden

5

10.02.2008, 21:10

Quellcode wird Dir nicht wirklich helfen

Wichtiger ist als erstes die inhaltliche Gliederung.

C++ versteht sich als objektorientierte Sprache. Das bedeutet, dass es zu einer Art Baukasten wird. Vorgefertigte Teile können als Blackbox benutzt werden. Das funktioniert nur, wenn jedes eingebaute Teil nur das tut, was es soll und nichts anderes. Das nennt man dann Verkapselung. Die Bausteine sind die Klassen. Das was die Klassen tun sollen, machst Du über die Schnittstellen klar. Und hier ist der Punkt, bei dem Du fragst.

Der öffentliche Teil ist public. Über diesen Teil rufst Du die Klasse auf, damit diese Entsprechendes tut.
Der private Teil ist der interne Klassenteil. Eine Art Blackbox. Die Klasse hat hier ihre Hilfsfunktionalitäten um die Klassenaufgabe zu bewältigen.

Hier verlangt die Objektorientierung eine straffe Ordnung. Gerade am Anfang ist dies nicht einsehbar. Ohne Objektorientierung kriegst Du alles hin.
Da musst Du aber durch. Das sind die Spielregeln für den Überblick bei größeren Projekten. Leider wird dann immer noch etwas drauf gesattelt. Abgeleitete Klassen, Vererbung usw.

Egal, hole Dir aus der Bücherei verschiedene Bücher. Lasse Dir Zeit. Solche Dinge müssen erst einmal verdaut werden. Und mach unbedingt die entsprechenden Buchaufgaben aus dem Gedächtnis nach, bis Du es kannst. Mache ich auch gerade (ziemlich stressig)! :)

Terep
Avatar = „Odyssee im Weltraum“
Film von Stanley Kubrick (Warner Brothers)
nach dem Buch von Arthur C. Clarke.
It will becoming true ?!!

6

14.02.2008, 06:36

k danke :)
ich geb mein bestes :D

Werbeanzeige