Avatar
Cencek
Člen
Avatar
Cencek:

Takže mám kód :
class Vector3
{
public int X { get; set; }
public int Y { get; set; }
public int Z { get; set; }

public static Vector3 operator +(Vector3 p1, Vector3 p2)
{
return new Vector3() { X = p1.X + p2.X, Y = p1.Y + p2.Y, Z = p1.Z + p2.Z };
}

}
a potřeboval bych poradit jak funguje ten konstruktor protože mě google zradil :( a nic sem nenašel popř věděl by někdo o nějakém C# code analyzer ktery by mi popsal jak daný kód funguje? :)
Předem díky za odpověď

 
Odpovědět 4.10.2014 19:33
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na Cencek
Jan Vargovský:

Žádný konstruktor tam nemáš. Resp. máš, ale je bezparametrický a dodělá ho za tebe kompilátor.

 
Nahoru Odpovědět 4.10.2014 19:36
Avatar
Cencek
Člen
Avatar
Odpovídá na Jan Vargovský
Cencek:

V tom případě jakou funkci splňuje následující část kódu?

public static Vector3 operator +(Vector3 p1, Vector3 p2)
{
return new Vector3() { X = p1.X + p2.X, Y = p1.Y + p2.Y, Z = p1.Z + p2.Z };
}
Editováno 4.10.2014 19:41
 
Nahoru Odpovědět 4.10.2014 19:38
Avatar
IT Man
Redaktor
Avatar
Odpovídá na Cencek
IT Man:

Sakra, mohli by jste se už naučit používat tlačítko code? Kdo to pak má luštit?

Nahoru Odpovědět  +2 4.10.2014 19:40
Když nevíš jak dál, podá ti ruku někdo, od koho by jsi to nečekal. A tu šanci musíš přijmout!
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na Cencek
Jan Vargovský:

Přetížíš operátor +, že můžeš jednotlivé instance této třídy sčítat.

třeba máš
Vector3 a = new Vector3 { X = 1, Y = 1, Z = 1 };
Vector3 b = new Vector3 { X = 2, Y = 2, Z = 2 };
a Vector3 ab = a +b bude mít hodnoty [3,3,3]

Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
 
Nahoru Odpovědět 4.10.2014 19:42
Avatar
Cencek
Člen
Avatar
Cencek:

Díky!

 
Nahoru Odpovědět 4.10.2014 19:48
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.