2012-11-08 2 views
1

Je souhaite ajouter un tas d'objets de ce type à un vecteur std :: vector.Initialisation de std :: vector de structures

typedef struct 
{ 
    int handle; 
} Handle; 

La poignée est définie dans un en-tête API C que je ne peux pas changer. Je le fais pour le moment, mais je me demande si cela peut être fait comme un doublure.

Handle handle1 = {12}; 
Handle handle2 = {13}; 
std::vector<Handle> handles = boost::assign::list_of(handle1)(handle2); 

J'utilise un compilateur C++ 98.

Répondre

1

Il suffit d'écrire une fonction make_handle:

Handle make_handle(int handle) { 
    Handle ret = { handle }; 
    return ret; 
} 
Questions connexes