Poznáváme C# a Microsoft.NET 22. díl – uživatelsky definované konverze

Diskuze čtenářů k článku

avatar
24. 11. 2007 13:25

Programovou oflline verzi seriálu naleznete ke stažení na http://poznavame-c-msnet.wz.cz/

Souhlasím  |  Nesouhlasím  |  Odpovědět
Libor  |  06. 10. 2006 07:37

Pro správnou funkčnost by to mělo vypadat takhle:
///


/// Imiplicitni konverze hodnoty typu RimskeCislo na
/// hodnotu typu String
///

public static implicit operator string (RimskeCislo RimskaHodnota)
{
string lVysledek = String.Empty;
lVysledek += RimskaHodnota.CiselnyRetezec(1000, "M");
lVysledek += RimskaHodnota.CiselnyRetezec(900, "CM");
lVysledek += RimskaHodnota.CiselnyRetezec(500, "D");
lVysledek += RimskaHodnota.CiselnyRetezec(400, "CD");
lVysledek += RimskaHodnota.CiselnyRetezec(100, "C");
lVysledek += RimskaHodnota.CiselnyRetezec(90, "XC");
lVysledek += RimskaHodnota.CiselnyRetezec(50, "L");
lVysledek += RimskaHodnota.CiselnyRetezec(40, "XL");
lVysledek += RimskaHodnota.CiselnyRetezec(10, "X");
lVysledek += RimskaHodnota.CiselnyRetezec(9, "IX");
lVysledek += RimskaHodnota.CiselnyRetezec(5, "V");
lVysledek += RimskaHodnota.CiselnyRetezec(4, "IV");
lVysledek += RimskaHodnota.CiselnyRetezec(1, "I");
return lVysledek;
}

Souhlasím  |  Nesouhlasím  |  Odpovědět
22. 10. 2010 13:29

Myslím, že nie je šťastným nápadom použiť

13 krát lVysledek += ...

Čo znamená, že sa 13x vytvorí nový reťazec v pamäti. Lepší by bol StringBuilder.

Souhlasím  |  Nesouhlasím  |  Odpovědět
Fredik, Fredik  |  08. 05. 2005 18:32

Zajimave ale kdyby se daly stahnou zdrojaky nebylo by to veru zle

Souhlasím  |  Nesouhlasím  |  Odpovědět
Zasílat názory e-mailem: Zasílat názory Můj názor