Domanda

Ho una spinta: il tipo di oggetto labeled_graph che non sembra avere le funzioni necessarie per la serializzazione.

    error: ‘class boost::labeled_graph<boost::adjacency_list<boost::listS, boost::listS,
 boost::undirectedS, Space, spaceEdge, graphProperties, boost::listS>, std::basic_string<char,
 std::char_traits<char>, std::allocator<char> >, boost::defaultS>’ has no member named
 ‘serialize’

Qualche modo per serializzare labeled_graph in file?

È stato utile?

Soluzione

Non l'ho mai visto prima, ma labeled_graph sembra unthin wrapper attorno a un altro grafico di tua scelta, in questo caso hai scelto adjacency_list dall'aspetto di quell'errore.C'è un supporto potenziato per la serializzazione degli elenchi di adiacenza tramite <graph/adj_list_serialize.hpp>, quindi sembra che tu possa usare serializzazione di funzioni gratuite abbastanza sensata con questo, qualcosa come:

template<class Archive>
inline void serialize(
    Archive & ar, 
    my_grap_typedef & g, 
    const unsigned int /*file_version*/
){
  ar & g.graph()
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top