Tengo que escribir el constructor con dos parámetros predeterminados.cómo saltear Argumentos predeterminados C++?
func(int arg1 , char* arg2 = "arg2", int arg3 = 1) //example
me proporciona el escenario en el que se llama al constructor y se le da un valor a arg1
y arg2
y arg3
se espera que utilice un valor predeterminado. A continuación, se crea una instancia de otro objeto y se da un valor a arg1
y arg3
, y se espera que se use el valor predeterminado para arg2
. Ahora el problema es que "no se puede omitir" los parámetros predeterminados es lo que estoy leyendo del texto y en línea. Se dice ordenar los parámetros predeterminados por su simpatía de sobrecarga, pero el escenario tiene un parámetro predeterminado utilizado mientras que el otro no. Las sugerencias para esta pregunta me dicen que reordene los parámetros/argumentos. Sin embargo, ninguna cantidad de reordenamiento que he hecho parece ser capaz de resolver este problema.
Además, los constructores sobrecargados no se pueden utilizar. Esto tiene que ser hecho por un constructor.
¿Cómo podría uno hacer esto? Estoy perplejo e ir un poco loco sobre este :(
No puede hacer esto en C++ con una sola definición de función. Dado que cualquier otra solución viola las limitaciones extrañas que tiene, lo que quiere es imposible. Quizás puedas usar un idioma diferente. –
es esta tarea? – xmoex
¿No podría usar un 'vector' de' objeto? De esta forma, podría pasar lo que desea y ordenar lo que no se aprobó según las entradas 'null'. – MoonKnight