Forum: Compiler & IDEs SFML doppelter doppelpunkt


von Benni (Gast)


Lesenswert?

Hi,

ich lerne gerade C++
Komme auch ganz gut zurecht.
Nun hat mich mich etwas stutzig gemacht.

Um einfach mal irgendwas zu machen, habe ich mit SFML angefangen.
Im Tutorial maxht mixh etwas stutzig

http://www.sfml-dev.org/tutorials/1.3/window-events.php

dort heißt es:

sf::Event Event;
while (App.GetEvent(Event))
{
    // Window closed
    if (Event.Type == sf::Event::Closed)
        Running = false;

    // Escape key pressed
    if ((Event.Type == sf::Event::KeyPressed) && (Event.Key.Code == 
sf::Key::Escape))
        Running = false;
}

meine Frage ist, warum bei "sf::Event::Closed" zwischen event und close 
ein :: ist ?! beim ersten ist es der namespace.. aber was das beim 2ten 
soll weiß ich nicht..
Ist wohl ne generelle Frage.

Danke für Hilfe,

Grüße, Benni

von Klaus W. (mfgkw)


Lesenswert?

Wenn in der Klasse sf:::Event eine enum definiert ist, und einer der 
Werte den schönen Namen Closed hat, dann ist dessen volle Bezeichnung 
halt sf:::Event::Closed.

Analog, wenn in einer Klasse eine Unterklasse definiert wird, darin 
wieder eine Klasse oder ein enum etc..

von ... (Gast)


Lesenswert?

... oder eine statische Methode ...

von Klaus W. (mfgkw)


Lesenswert?

... oder ein typedef oder ein weiterer namespace...

noch was vergessen?

von Klaus W. (mfgkw)


Lesenswert?

... schrieb:
> ... oder eine statische Methode ...

müsste nicht statisch sein; es könnte auch die Adresse einer 
nichtstatischen sein.

von Benni (Gast)


Lesenswert?

is static.. danke nomma.. jetzt hab ichs verstanden.. wusste garned, 
dass man mittels static ohne eine instanz zu erzeugen schon variablen 
festlegen kann.. so hab was gelernt.. jute n8 ^^

von Klaus W. (mfgkw)


Lesenswert?

Huch, gerade ein static Element hatten wir noch nicht aufgezählt.

Aber jetzt sollte es rund sein.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.