NOVINKA: Získej 40 hodin praktických dovedností s AI – ZDARMA ke každému akreditovanému kurzu!
S účinností od 26. 3. jsme aktualizovali Zásady zpracování osobních údajů – doplnili jsme informace o monitorování telefonických hovorů se zájemci o studium. Ostatní části zůstávají beze změn.

Diskuze: Funkce kódu

V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.

Jak se ti líbí článek?
Před uložením hodnocení, popiš prosím autorovi, co je špatněZnaků 0 z 50-500
Jak se ti kurz líbí?
Tvé hodnocení kurzuZnaků 0 z 50-500
Aktivity
Avatar
Cencek
Člen
Avatar
Cencek:4.10.2014 19:33

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ý
Tvůrce
Avatar
Odpovídá na Cencek
Jan Vargovský:4.10.2014 19:36

Žá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:4.10.2014 19:38

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
Jan Lupčík
Tvůrce
Avatar
Odpovídá na Cencek
Jan Lupčík:4.10.2014 19:40

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
TruckersMP vývojář
Avatar
Jan Vargovský
Tvůrce
Avatar
Odpovídá na Cencek
Jan Vargovský:4.10.2014 19:42

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í
+2,50 Kč
Řešení problému
 
Nahoru Odpovědět
4.10.2014 19:42
Avatar
Cencek
Člen
Avatar
Cencek:4.10.2014 19:48

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.