C++ erreur: primary-expression before ‘.’ token

J'ai regardé les questions antérieures, mais encore je n'étais pas satisfait, donc je vous poste ça.
J'ai essayé de compiler le code C++ écrit par quelqu'un d'autre.

/*
file1.h
*/
#include <stdio.h>
#include <stdlib.h>
typedef struct
{
    struct
    {   
        unsigned member1;
        unsigned  member2; 
    } str1;

    struct
    {
        unsigned member3;
        unsigned  member4; 
    } str2;

    struct
    {
        unsigned member5;
        unsigned  member6; 
    } str3;
} CONFIG_T;



/* 
file1.c
*/
CONFIG_T  cfg =
{
    .str1 = { 0x01, 0x02 },
    .str2 = { 0x03, 0x04 },
    .str3 = { 0x05, 0x06 }
};

Compilé avec std C++11 et je reçois l'erreur ci-dessous. Pourquoi le". " a été utilisé dans le code
lors de l'attribution des valeurs ?

home $$  g++ -c -std=gnu++0x  initialze_list.cpp

initialze_list.cpp:34: error: expected primary-expression before ‘.’ token

initialze_list.cpp:35: error: expected primary-expression before ‘.’ token

initialze_list.cpp:36: error: expected primary-expression before ‘.’ token

Je n'étais pas en mesure de comprendre la raison de l'erreur. S'il vous plaît aider.

les lignes qui sont au nombre de 34,35,36?
Vous avez reçu le code en C, pas du C++ code. Essayez un compilateur C.
Vous n'êtes pas la première personne à avoir ce problème: stackoverflow.com/q/855996/1025391

OriginalL'auteur Ashoka K | 2012-07-09