Ich fange an, über C++ - Klassen zu lernen, und ich habe ein Problem. Ich habe über Konstruktoren und Initialisierungslisten gelesen, aber ich kann mein Problem immer noch nicht lösen.C++ Aufruf eines anderen Klassenkonstruktors
-Code in foo.h:
class point{
public:
double x,y;
point(double x1, double y1);
};
class line: public point{
public:
double A,B,C;
double distance(point K);
line(point M, point N);
};
Und in foo.cpp:
point::point(double x1, double y1){
x=x1;
y=y1;
}
line::line(point M, point N){
if(M.x!=N.x){
A=-(M.y-N.y)/(M.x-N.x);
B=1;
C=-(M.y-A*M.x);
}
else{
A=1;
B=0;
C=-M.x;
}
}
Natürlich funktioniert es nicht, denn ich weiß nicht, wie in Zeile Punkt Konstruktor aufzurufen Konstrukteur. Wie kann ich das machen ? Ich möchte etw wie das tun:
point A(5,3),B(3,4);
line Yab(A,B);
Blick up getters und setters - aka machen Membervariablen nicht öffentlich –
Warum sollte 'line' von' point' erben? Es hat keinen Nutzen für die Punktattribute 'x' und' y'. – lucianopaz
Oh fck es funktioniert: D Ich habe nur die Vererbung entfernt. –