Deklarieren von Variablen innerhalb von Funktionen einer Klasse in C++

MyFill ist eine Klasse und MyFill2 ist eine Funktion innerhalb dieser Klasse.

Was ist der Unterschied zwischen der Deklaration einer variable innerhalb der öffentlichen Funktion der Klasse wie folgt aus (Dicke und Linientyp) -->

MyFill::MyFill (Mat img, Point center)
{
    MyFill2 (img, center);
}

void MyFill::MyFill2(Mat img, Point center)
{
    int thickness = -1;
    int lineType = 8;
    circle (
        img,
        center,
        w/32,
        Scalar( 0, 0, 255 ),
        thickness,
        lineType
    );
}

...und nur deklarieren Sie im private-label (private:), wie in der header-Datei -->

class MyFill {
public:
    MyFill(Mat img1, Point center1);
    void MyFill2 (Mat img, Point center);
private:
    int thickness = -1;
    int lineType = 8;
};

Den ersten richtig funktioniert. Aber die zweite nicht. Wenn ich wählen Sie die zweite option, was muss ich tun? Eine richtige code mit einer kurzen Erklärung helfen könnte.

  • was funktioniert nicht?
  • Ich war immer ein Fehler: nur statische Konstante Integrale Datenmember können innerhalb einer Klasse initialisiert
InformationsquelleAutor ridctg | 2013-07-24
Schreibe einen Kommentar