2013-07-21 39 views
1

我想子類boost :: unordered_map(所以我可以捕捉異常,但沒有異常捕捉邏輯混亂我的程序)。我已經成功包裝了boost :: unordered_map,但我想嘗試創建一個子類。如何創建boost :: unordered_map的子類?

無論如何,我無法確定正確的子類語法。

下不起作用:

template<typename Key, typename Mapped, typename Hash = boost::hash<Key>, 
     typename Pred = std::equal_to<Key>, 
     typename Alloc = std::allocator<std::pair<Key const, Mapped>> > 
class unordered_map : public boost::unordered_map<typename Key, typename Mapped, typename Hash = boost::hash<Key>, 
                typename Pred = std::equal_to<Key>, 
                typename Alloc = std::allocator<std::pair<Key const, Mapped>> > 
{ 

}; 
+4

標準集裝箱沒有被設計成可以作爲基類,所以通常的回答是「不要去嘗試。」 –

+0

很高興知道。其實,尋找*爲什麼這是一個糟糕的主意給了我更多的見解,而不是尋找*如何去做。 –

+1

你可以用@Bartek的話來包裝 –

回答

1
​​
+0

,你最好把unordered_map換成另一個類 – thomas