Ingresando elementos de tipo desconocido en un vector

Estoy trabajando en un programa que toma elementos de un usuario y los ordena. Para este programa, tengo que usar un vector ya que el tamaño de la lista de elementos es desconocido antes de la entrada del usuario. Nuestras instrucciones fueron:

Escriba un programa en C ++ para implementar la clasificación de una lista de elementos. Los elementos pueden ser de cualquier tipo, pero todos serán del mismo tipo, como todos los enteros o todos los flotadores o todos los caracteres o todas las cadenas (las cadenas se ordenarán como en un diccionario). Puede implementar cualquier algoritmo de clasificación de su elección.

Pregunte al usuario cuántos elementos habrá allí.Pedir al usuario que ingrese elementosPida al usuario que elija el orden de clasificación: ascendente o descendente o ambosImprimir listas de entrada y salidaEl usuario no proporcionará ninguna información sobre el tipo de elementos

No estoy muy familiarizado con los vectores (el profesor básicamente analizó el tema en clase) y mi libro no me da mucha información sobre el tema. El problema que estoy encontrando es que no conozco el tipo de la lista de elementos hasta que el usuario comienza a ingresar. Hasta ahora, he intentado:

creando un vector de tipo vacío (obviamente no está permitido ahora que lo he investigado, oops)sobrecargar una función llamadainsertInVector enviando el primer elemento a la función y dejando que la función determine qué tipo de vector crear en función del tipo del primer elemento (que me pareció la mejor opción cuando lo pensé, excepto que necesito acceso al vector una vez que la función termina) , por lo que terminó siendo un no ir, también)#include <typeinfo> en el programa, encontrando el tipo del primer elemento, y luego creando un vector usandovector<typeid(firstElement).name()> y honestamente no estoy seguro de por qué no funcionó, pero no lo hizo.

Como dije, tengo EXTREMADAMENTE una experiencia limitada con los vectores, ya que es la primera vez que los uso. También soy un programador bastante nuevo, así que mucha de la investigación que he hecho sobre esto ha pasado por alto mi cabeza. Cualquier ayuda que se pudiera dar en esto sería GRANDEMENTE apreciada!

Respuestas a la pregunta(4)

Su respuesta a la pregunta