Wprowadzanie elementów nieznanego typu do wektora

Pracuję nad programem, który pobiera elementy od użytkownika i sortuje je. Dla tego programu muszę użyć wektora, ponieważ rozmiar listy elementów jest nieznany przed wprowadzeniem przez użytkownika. Nasze instrukcje były:

Napisz program w C ++, aby zaimplementować sortowanie listy elementów. Elementy mogą być dowolnego typu, ale wszystkie będą tego samego typu, jak wszystkie liczby całkowite lub wszystkie zmiennoprzecinkowe lub wszystkie znaki lub wszystkie łańcuchy (łańcuchy powinny być sortowane jak w słowniku). Możesz zaimplementować dowolny wybrany algorytm sortowania.

Zapytaj użytkownika, ile elementów tam będziePoproś użytkownika o wprowadzenie elementówPoproś użytkownika, aby wybrał porządek sortowania: rosnąco lub malejąco lub obaWydrukuj zarówno listy wejściowe, jak i wyjścioweUżytkownik nie dostarczy żadnych informacji dotyczących rodzaju elementów

Nie znam dobrze wektorów (nauczyciel w zasadzie odświeżył temat w klasie), a moja książka nie daje mi wielu informacji na ten temat. Problem, w którym pracuję, polega na tym, że nie znam typu listy elementów, dopóki użytkownik nie rozpocznie wprowadzania danych. Do tej pory próbowałem:

tworzenie wektora typu pustki (oczywiście nie jest dozwolone teraz, gdy go zbadałem, oops)przeciążenie wywołanej funkcjiinsertInVector wysyłając pierwszy element do funkcji i pozwalając funkcji określić, jaki typ wektora utworzyć w oparciu o typ pierwszego elementu (co wydawało mi się najlepszą opcją, gdy o tym pomyślałem, z wyjątkiem tego, że potrzebuję dostępu do wektora po zakończeniu funkcji) , więc to też skończyło się bezczynnie)#include <typeinfo> w programie, znajdując typ pierwszego elementu, a następnie tworząc wektor używającvector<typeid(firstElement).name()> i szczerze mówiąc nie wiem, dlaczego to nie zadziałało, ale tak nie było.

Tak jak powiedziałem, mam wyjątkowo ograniczone doświadczenie z wektorami, ponieważ jest to mój pierwszy raz z nich korzystam. Jestem także całkiem nowym programistą, więc wiele badań, które zrobiłem na ten temat, przeszły mi przez głowę. Każda pomoc, która mogłaby zostać udzielona, ​​byłaby WIELKA doceniona!

questionAnswers(4)

yourAnswerToTheQuestion