2010-09-27 12 views
2

g ++ 4.4.3Initialiser une structure en C++

je la structure suivante à partir d'un guide API:

typedef struct NETWORK_INFO 
{ 
    int network_id; 
    int count; 
} NETWORK_INFO, *NETWORK_INFO; 

Et dans le code source qu'ils font ceci:

NETWORK_INFO net_info = {}; 

Est-ce que les 2 accolades initialisent l'objet de la structure? Mais à quoi initialiserait-elle les valeurs?

Un grand merci pour tous les conseils,

+1

Vous pouvez trouver cette réponse à une question connexe http://stackoverflow.com/questions/775902/zeroing-out-a-struct-in-the-constructor/775935#775935 – sharptooth

+0

Ce code est illégal. Vous devez utiliser des jetons différents sur la dernière ligne. –

Répondre

3

Ce sera par défaut tous les champs-initialiser de variables net_info - les mettre à la fois à zéro. C'est un one-liner pratique utilisé pour initialiser struct s qui n'ont pas de constructeur défini par l'utilisateur au lieu d'utiliser memset().

Questions connexes