Bir sınıfa 3 değişken bildirmem ve bu değişkenleri diğer değerlere atamak için bir işlev oluşturmam gerekiyor ve uzaklığı hesaplamak için başka bir işlev daha oluşturun. yeni değerler ulaşılamaz, ve benim Değişti (X/Y/Z) Ben OOP okuyan başladım, aynı zamanda hep sıfırBir işlevdeki bir değişkenin değerini değiştirme ve kepçe dışından kullanma
class Point3D
{
public double x, y, z, ChangedX = 0, ChangedY = 0, ChangedZ = 0;
public void MoveTo(double NewX, double NewY, double NewZ)
{
x = NewX;
NewX = ChangedX;
y = NewY;
NewY = ChangedY;
z = NewZ;
NewZ = ChangedZ;
}
public double DistanceTo()
{
double DeltaX = Math.Pow((ChangedX - x), 2);
double DeltaY = Math.Pow((ChangedY - y), 2);
double DeltaZ = Math.Pow((ChangedZ - z), 2);
return Math.Sqrt(DeltaX + DeltaY + DeltaZ);
}
değildir bir süre önce o may tavsiye kurslardan herhangi birine kaynaklar var ise bana yardım et?
Gönderilen kodunuzda, ChangedX/Y/Z değişkenlerinizi 0 olarak ayarladıktan sonra değiştiren hiçbir şey yoktur. Bunları başka bir kodda, sınıfın dışından mı ayarlıyorsunuz? –
ChangedX/Y/Z'yi NewX/Y/Z'ye atamak amacınız nedir? Referans olarak aramadığınız için, MoveTo() kapsamı bittiğinde bu değerler kaybolacaktır. – Guclu
Değişkenlere ulaşılamıyorsa, sınıfın birden fazla örneğiniz olduğu anlamına gelir. Bir sınıftaki değişkenleri paylaşmak için, sınıfın aynı örneğini kullanmanız veya değişkenleri statik hale getirmeniz gerekir, böylece sınıfın her aşamasında her zaman aynı olurlar. – jdweng