c++ private member deklariert in der header-vs static deklarierte variable in der cpp-Datei

ich habe eine variable, die ich lieber zu erklären, in einer cpp-Datei anstelle der header-Datei. Es sollte zugänglich sein, um Objekte der Klasse nur. Diese variable sollte eine separate Kopie für jedes Objekt der Klasse. Vererbung ist nicht notwendig.

Normalerweise, würde ich einfach deklarieren Sie in der Klasse definition.

A. h:

class A {
    private:
        int number;
}

Aber, kann ich dies anstelle?

B. h:

class B {
    private:
        //nothing
}

B.cpp:

static int number;
  • Was ist das problem mit der normalen Vorgehensweise, die Sie vorgeschlagen, ersten ? (die Deklaration als nicht-statische private Mitglied)
  • ein Grund für die Deklaration in der .cpp-Datei ist, dass, wenn die privaten Mitglieder sind alle Strukturen, die ich brauchen würde, um zu erklären, alle Strukturen im header, das ist chaotisch. aber ansonsten ist es kein problem. auch ich wollte nur wissen, ob die beiden Ansätze sind die gleichen.
InformationsquelleAutor Coder | 2011-07-19
Schreibe einen Kommentar