• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Automatyczne tworzenie instancji klasy

0 głosów
602 wizyt
pytanie zadane 2 czerwca 2017 w C# przez Szymek_sw Początkujący (420 p.)
edycja 2 czerwca 2017 przez Szymek_sw
Witam!

Jestem początkujący w Visual Studio. Od pewnego czasu nurtuję mnie pytania czy da się tworzyć "automatycznie" instancje klasy np. W pętli tworzyć instancje o nazwie X1 (za każdym razem numer zwiększony o jeden), lub instancje klasy o nazwie podanej przez użytkownika. Potrzebne mi to ponieważ okazało by się bardzo przydatne w momencie kiedy przypinam klasę do kolekcji List<T>

Edit: Nie chodzi mi oto jak podpiąć klasę pod listę tylko jak stworzyć nową instancje, nie w sposób napisania linijki kodu, tylko stworzenia nowej instancji przez komputer o nazwie zawartej np w stringu. (lub jakiej kolwiek innej zmiennej)

Dziękuje wszystkim za odpowiedź!

1 odpowiedź

+1 głos
odpowiedź 2 czerwca 2017 przez Żyrosławw Bywalec (2,300 p.)
wybrane 2 czerwca 2017 przez Szymek_sw
 
Najlepsza
while(i<N)my_list.push_back(klasa(i));

Coś takiego? Do listy wrzucasz wtedy instancje twojej klasy. Mozna tez zrobic na wcisniecie przycisku, czy wprowadzanie stringa 

komentarz 2 czerwca 2017 przez Szymek_sw Początkujący (420 p.)
Ta instrukcja tworzy nową instancje czy tylko przypisuje ją do listy?
komentarz 2 czerwca 2017 przez Żyrosławw Bywalec (2,300 p.)
W tym przypadku chodzi o użycie konstruktora, więc tworzymy instancje i wrzucamy ją do listy
komentarz 2 czerwca 2017 przez Szymek_sw Początkujący (420 p.)
Dzięki! przetestuje.
komentarz 2 czerwca 2017 przez Szymek_sw Początkujący (420 p.)

A jak zaimplementować to rozwiązanie przy normalnym tworzeniu instancji? 

NazwaKlasy Nazwainstancji = new NazwaKlasy(); // Tak zeby Nazwainstancji była podawana w np. stringu lub zeby była była po kolei nazywana np. Instancja1 Instancja2...
komentarz 2 czerwca 2017 przez Żyrosławw Bywalec (2,300 p.)

Mozesz stworzyc liste ze wskaznikami na klase:

list<Klasa *> my_list;

Klasa *a = new Klasa();

my_list.push_back(a);

A jesli chcesz wpisywac nazwy klas jako stringi to juz musisz po prostu zrobic jakas funkcje ktora zaleznie od wpisanego stringaa twirzy instancje

Podobne pytania

0 głosów
1 odpowiedź 505 wizyt
0 głosów
0 odpowiedzi 807 wizyt
0 głosów
1 odpowiedź 303 wizyt
pytanie zadane 28 maja 2016 w Java przez nostressghost Nowicjusz (240 p.)

93,788 zapytań

142,753 odpowiedzi

323,429 komentarzy

63,393 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...