sawashan adlı üyeden alıntı:
mesajı görüntüle
C++ Class'lar Hakkında
12
●191
- 15-04-2020, 14:46:02Üyeliği durdurulduHocam çok çok çok teşekkür ederim hallettim Allah senden razı olsunDogukan adlı üyeden alıntı: mesajı görüntüle
)
- 16-04-2020, 12:22:07@sawashan; uyarın için çok teşekkür ederim. Yazdığım kodda sızıntı oluşuyor. Aşağıdaki şekilde çok daha sağlıklı olacaktır.suvogram adlı üyeden alıntı: mesajı görüntüle
x ve y değişkenlerini kaldırdım onun yerine sadece point arrayini koydum.
point[0] = x
point[1] = y
olarak düşünebilirsin.
#include <iostream> #ifndef MYPOINT_H #define MYPOINT_H class MyPoint { public: MyPoint(); MyPoint(int, int); ~MyPoint(); int getX(); void setX(int); int getY(); void setY(int); int* getXY(); void setXY(int, int); void toString(); double distance(int, int); double distance(); private: int point[2]; }; #endif#include "test.h" #include <iostream> #include <math.h> MyPoint::MyPoint() { point[0] = 0; point[1] = 0; } MyPoint::~MyPoint() { delete[]point; } MyPoint::MyPoint(int a, int b) { point[0] = a; point[1] = b; } int MyPoint::getX() { return point[0]; } void MyPoint::setX(int a) { point[0] = a; } int MyPoint::getY() { return point[1]; } void MyPoint::setY(int a) { point[1] = a; } int* MyPoint::getXY() { return point; } void MyPoint::setXY(int a, int b) { point[0] = a; point[1] = b; } void MyPoint::toString() { std::cout << "Nokta kordinatınız : (" << point[0] << "," << point[1] << ")" << std::endl; } double MyPoint::distance(int a, int b) { return sqrt((point[0] - a) * (point[0] - a) + (point[1] - b) * (point[1] - b)); } double MyPoint::distance() { return sqrt((point[0]) * (point[0])+(point[1]) * (point[1])); }
yani bunu özellikle istiyorsunuz. Doğru mu ?
)