Hypercell ein ] Hypercell aus ] Zeige Navigation ] Verstecke Navigation ]
c++.de  
   
Forentreff 2012     
Bücher-Shop mit Amazon (Buchkategorien)C++ : Referenzen zu C++ : C++ Builder : Visual C++ : C# : Java : Spieleprogrammierung : Systemprogrammierung Linux : Software-Entwicklung : .NET : Compilertechnik : Algorithmen & Datenstrukturen : Objektorientierung : Entwurfsmuster : UML : eXtreme Programming : Scrum : Projektmanagement : Software-Testing : Datenbanken : Tom DeMarco : Dilbert : User Friendly
C/C++ Forum :: C++ (auch C++0x und C++11) ::  Wie definiere ich const innerhalb von der Klasse     Zeige alle Beiträge auf einer Seite Auf Beitrag antworten
Autor Nachricht
koschka
Mitglied

Benutzerprofil
Anmeldungsdatum: 18.01.2012
Beiträge: 85
Beitrag koschka Mitglied 09:53:48 01.02.2012   Titel:   Wie definiere ich const innerhalb von der Klasse            Zitieren

ich habe die Klasse:

Test{

}

und ich will anstatt von globalen Variablen:

extern int DRIVE_MASS_STORAGE_TYPE=2;

eine const int DRIVE_MASS_STORAGE_TYPE; haben

Wie kann ich die innerhalb eine Klasse definieren?
Man kann die glaube ich mit :
Test:(DRIVE_MASS_STORAGE_TYPE = 2){} definieren.Bräuchte mehr Information wie es geht?
Ethon
Mitglied

Benutzerprofil
Anmeldungsdatum: 28.01.2011
Beiträge: 1114
Beitrag Ethon Mitglied 10:15:01 01.02.2012   Titel:              Zitieren

Machs doch so:

C/C++ Code:
class Test
{
    static const int DRIVE_MASS_STORAGE_TYPE = 2;
};
C/C++ Code:
class Test
{
static const int DRIVE_MASS_STORAGE_TYPE = 2;
};
C/C++ Code:
class Test
{
    static const int DRIVE_MASS_STORAGE_TYPE = 2;
};


Zuletzt bearbeitet von Ethon am 10:15:11 01.02.2012, insgesamt 1-mal bearbeitet
~Cassiopeia~
Mitglied

Benutzerprofil
Anmeldungsdatum: 28.12.2010
Beiträge: 59
Beitrag ~Cassiopeia~ Mitglied 10:15:06 01.02.2012   Titel:              Zitieren

C/C++ Code:
class Test
{
    const int a;
public:
    Test(int b) : a(b) {}
};
C/C++ Code:
class Test
{
const int a;
public:
Test(int b) : a(b) {}
};
C/C++ Code:
class Test
{
    const int a;
public:
    Test(int b) : a(b) {}
};


Damit wird a direkt mit dem Wert von b initialisiert, falls du das gemeint hast.


Zuletzt bearbeitet von ~Cassiopeia~ am 10:15:40 01.02.2012, insgesamt 1-mal bearbeitet
koschka
Mitglied

Benutzerprofil
Anmeldungsdatum: 18.01.2012
Beiträge: 85
Beitrag koschka Mitglied 10:32:21 01.02.2012   Titel:              Zitieren

und welcher bedeutung hat static in deisem Fall?
_Vic_
Mitglied

Benutzerprofil
Anmeldungsdatum: 13.03.2005
Beiträge: 55
Beitrag _Vic_ Mitglied 12:49:33 01.02.2012   Titel:              Zitieren

static heißt, dass jede Instanz einer Klasse bei Zugriff auf diese Variable auf den selben Speicherplatz zeigt. Wenn du willst, ist das auch eine Art von globaler Variable, aber im Namensraum der Klasse gekapselt. Diese Kapselung hat den Vorteil, dass du in unterschiedlichen Klassen den gleichen statischen Variablennamen verwenden kannst, ohne dass es zu Konflikten kommt.
koschka
Mitglied

Benutzerprofil
Anmeldungsdatum: 18.01.2012
Beiträge: 85
Beitrag koschka Mitglied 13:48:02 01.02.2012   Titel:              Zitieren

danke für eure Hilfe
C++ Forumbot
Forumbot

Benutzerprofil
Anmeldungsdatum: 29.02.2004
Beiträge: 16160
Beitrag C++ Forumbot Forumbot 15:39:45 01.02.2012   Titel:              Zitieren

Dieser Thread wurde von Moderator/in rüdiger aus dem Forum Rund um die Programmierung in das Forum C++ (auch C++0x, bzw. C++11) verschoben.

Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?


Dieses Posting wurde automatisch erzeugt.

_________________
Besuchen Sie unsere Bücherecke.
http://www.c-plusplus.de/bucher.php
Mit jeder Bestellung unterstützen Sie das Forum.
C/C++ Forum :: C++ (auch C++0x und C++11) ::  Wie definiere ich const innerhalb von der Klasse   Auf Beitrag antworten

Zeige alle Beiträge auf einer Seite




Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Sie können Beiträge in dieses Forum schreiben.
Sie können auf Beiträge in diesem Forum antworten.
Sie können Ihre Beiträge in diesem Forum nicht bearbeiten.
Sie können Ihre Beiträge in diesem Forum nicht löschen.
Sie können an Umfragen in diesem Forum nicht mitmachen.

Powered by phpBB © 2001, 2002 phpBB Group :: FI Theme

c++.de ist Teilnehmer des Partnerprogramms von Amazon Europe S.à.r.l. und Partner des Werbeprogramms, das zur Bereitstellung eines Mediums für Websites konzipiert wurde, mittels dessen durch die Platzierung von Werbeanzeigen und Links zu amazon.de Werbekostenerstattung verdient werden kann.

Die Vervielfältigung der auf den Seiten www.c-plusplus.de, www.c-plusplus.info, www.c-sar.de, www.c-plusplus.net und www.baeckmann.de enthaltenen Informationen ohne eine schriftliche Genehmigung des Seitenbetreibers ist untersagt (vgl. §4 Urheberrechtsgesetz). Die Nutzung und Änderung der vorgestellten Strukturen und Verfahren in privaten und kommerziellen Softwareanwendungen ist ausdrücklich erlaubt, soweit keine Rechte Dritter verletzt werden. Der Seitenbetreiber übernimmt keine Gewähr für die Funktion einzelner Beiträge oder Programmfragmente, insbesondere übernimmt er keine Haftung für eventuelle aus dem Gebrauch entstehenden Folgeschäden.