Encaminhar declarações para variáveis?

Eu tenho algum código C que eu tenho que portar para C ++. O código tem uma estrutura

struct A { 
    ...
    struct A * myPtr;
}

E agora duas matrizes globais são declaradas e inicializadas assim:

//Forward declaration of Unit
struct A Unit[10];

struct A* ptrUnit[2] = { Unit, Unit+7 };
struct A Unit[10] = { { .., &ptrUnit[0] }, 
                      ... };

Agora, enquanto isso funciona bem em C, gera um erro em C ++ (variável redeclarada). As variáveis não podem ser declaradas a frente em C ++?

questionAnswers(3)

yourAnswerToTheQuestion