2012-11-26 23 views
4

舉例來說,假設我有以下結構/子結構定義:如何在子結構中使用BOOST_FUSION_ADAPT_STRUCT?

struct address_rec 
{ 
    std::string m_street; 
    std::string m_state; 
    unsigned  m_zip; 
}; 

struct employee_rec 
{ 
    std::string m_name; 
    address_rec m_address; 
}; 

我應該如何使用上employee_recBOOST_FUSION_ADAPT_STRUCT

回答

6

適應這兩種結構,這也有助於降低打破你的語法到每個結構類型太,(對於地址的規則,併爲員工的規則包含地址規則)

struct address_rec 
{ 
    std::string m_street; 
    std::string m_state; 
    unsigned  m_zip; 
}; 

BOOST_FUSION_ADAPT_STRUCT(
    ::address_rec, 
    (std::string, m_street) 
    (std::string, m_state) 
    (unsigned, m_zip) 
) 

struct employee_rec 
{ 
    std::string m_name; 
    address_rec m_address; 
}; 

BOOST_FUSION_ADAPT_STRUCT(
    ::employee_rec, 
    (std::string, m_name) 
    (address_rec, m_address) 
) 
+0

PERFECTO - tyvm – kfmfe04

相關問題