Red de conocimientos turísticos - Información de alquiler - Una pregunta de programación en C sobre contenedores de plantillas

Una pregunta de programación en C sobre contenedores de plantillas

/*

Escriba una plantilla de función CountEq que tome el tipo de contenedor de secuencia T como parámetro de plantilla.

Devuelve el número de elementos en el contenedor de secuencia que son iguales al elemento especificado.

En main():

(1) Construya una lista L1 con tipo de elemento int, obtenga y genere el número de elementos en L1 que son iguales al elemento especificado a través de CountEq;

(1) p>

(2) Construya una lista L2 cuyo tipo de elemento sea doble, obtenga y genere el número de elementos en L2 que son iguales al elemento especificado a través de CountEq.

(3) Construya una cola de doble extremo (deque) Q1 con un tipo de elemento int y obtenga y genere el número de elementos en Q1 que son iguales al elemento especificado a través de CountEq.

Requisito: utilizar un iterador para recorrer el contenedor y obtener el resultado de CountEq. Consejo: T::value_type es el tipo de elemento del contenedor de tipo T; T::iterator es el tipo de iterador del contenedor de tipo T.

*/

#include lt;iostreamgt;

#include lt;listgt;

#include lt;algorithmgt;

p>

Usar espacio de nombres std;

template lt; typename Tgt

int CountEq(T *ele, listlt; Tgt; listele)

{

int count=0;

if ((find(listele.listele.end(), *ele) ! = NULL)

recuento;

else

recuento=0;

retorno recuento

}

int main( )

{

listlt;intgt;L1;

intfindNum=20; p>

L2.push_front(30.5);

L2.push_front(40.5);

L2.push_front(50.5);

cout lt; lt."Pass CountEq Obtiene y genera el número de elementos en L1 que son iguales al elemento especificado" lt; CountEq(amp; findNum, L1) lt; p>

.