No se puede responder en forma especifica porque el ejemplo de una lista de inicialización puede variar dependiendo de como sea la estructura de las clases (tanto de las derivadas u de las clases base)
Ademas, para explicarlas primero hay que partir sobre la idea de como funcionan los constructores y como se maneja la cadena de llamadas en la herencia. Es un tema largo y bastante extenso.
Te dejo algunos ejemplos, así se vería una lista de inicialización en una clase:
class Yourclass
{
public:
Yourclass() : yourPrivateData( 5 ) //Inicializa yourPrivateData a 5
{ }
private:
int yourPrivateData;
};
Funciona con datos primitivos como un entero aunque en esos casos equivale a una asignación. Por supuesto también funciona con tipos built-in, y en esos casos hay una diferencia de rendimiento debido a que se omite la creación de un objeto temporal (como si sucede con la asignación en los constructores).
Igualmente las listas no solo se utilizan por esa cuota extra de rendimiento, en algunos casos son necesarias, por ejemplo cuando tenes constantes u referencias ya que en esos casos la inicialización es obligatoria.
Este es un ejemplo de una lista de inicialización en una clase derivada en donde el constructor de la clase base requiere una cadena como argumento:
class YourClass : public YourParent
{
YourClass() : YourParent( "Cad" )
{}
};
En conclusión, lo que te recomiendo es que busques en las chinchetas un libro de C++ para estudiar el tema, o que busques en Google algunos links que expliquen el tema en forma detallada, y como ultimo que pidas los apuntes de la clase del dia que no pudiste asistir.
Como dije al principio, el tema es largo como para explicarlo de corrido en un solo post, así que primero trata de hacer lo que te recomendé y si tenes alguna nueva duda sobre el mismo tema, la posteas en este hilo.
Saludos!