Portál AbcLinuxu, 14. května 2025 01:21

Dotaz: C#: Genericka trieda pre meniace sa premenne

31.1.2015 12:43 majvan | skóre: 5 | blog: Fandime linuxu | Trenčín
C#: Genericka trieda pre meniace sa premenne
Přečteno: 273×
Odpovědět | Admin
Ahojte,

chcel by som v C# vytvorit genericku triedu pre meniace sa premenne. Typy, ktore by tato trieda dokazala spracovat, by boli: numericke (integer, fload/double) a potom string. Jedine, co by tato trieda robila, by bolo, ze ked sa vytvara alebo meni premenna, tak by zavolala svoju specialnu metodu (ktora by zalogovala zmenu).

Mate na to nejake riesenie?
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

31.1.2015 14:31 suic
Rozbalit Rozbalit vše Re: C#: Genericka trieda pre meniace sa premenne
Odpovědět | | Sbalit | Link | Blokovat | Admin
Myslis, neco takovehoto?:
public class LogOnCreateAndChange< T >
	{
		private T myValue;

		public T Value {

			get{
				return myValue;
			}

			set{
				myValue = value;
				MySpecialMethod();
			}
		}

		public LogOnCreateAndChange (T value)
		{
			myValue = value;
			MySpecialMethod ();
		}

		public void MySpecialMethod() {
			// Add your logging here

			// e. g.:
			Debug.Print ("Logged");
		}
	}

Neni to prilis sofistikovane, ale (pokud to chapu spravne) tak to dela to, co chces.
31.1.2015 15:20 majvan | skóre: 5 | blog: Fandime linuxu | Trenčín
Rozbalit Rozbalit vše Re: C#: Genericka trieda pre meniace sa premenne
Ahoj,

jasne, toto je ten zaklad, ktory mam. Ja som ale chcel spravit take nieco ako LogOnCreateAndChange<int> a;

a nasledne pouzivat a ako int, t.j. aby slo porovnavat (IComparable) napr. aj s double hodnotou atd.
31.1.2015 16:23 ava
Rozbalit Rozbalit vše Re: C#: Genericka trieda pre meniace sa premenne
Co znamena to atd? Asi neocekavas, ze ti automaticky bude fungovat treba a + 1, nebo jo?
31.1.2015 16:45 suic
Rozbalit Rozbalit vše Re: C#: Genericka trieda pre meniace sa premenne
Ahoj, tak potom naimplementuj IComparable interface vo svojej triede (pozri sa napriklad na toto).

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.