¿No puede el tipo C ++ POD tener algún constructor?

Tengo una clase y una variable constante.

struct A 
{
    int b;
};

A const a;

La claseA es POD y se puede inicializar así.

A const a = { 3 };

IMHO, se ve bien tener un constructor como este.

struct A 
{
    int b;

    A(int newB) : b(newB)
    {
    }
};

Pero Clang asumeA como tipo no agregado. ¿Por qué no puedo tener un constructor así? ¿O debería hacer algo más?

Modifiqué la pregunta para presentar mi significado original. Había escrito elstruct comoclass por error, y perdón por @Johannes por confundir:)

Respuestas a la pregunta(3)

Su respuesta a la pregunta