簡體   English   中英

制作可變參數模板類的forward_list

[英]Making a forward_list of a variadic template class

我有一個std::forward_list ,還有一個類Delegate (從此處獲取 ),該類是帶有可變參數類型簽名的類( typename return_type, typename... Args )。

我想從這些Delegate創建一個std::forward_list 我將如何去做? 我努力了:

std::forward_list<Delegate<void, typename...> >但它給出語法錯誤。 我也想稍后添加到此列表中。 我可以保證每個列表(會有多個)僅具有將相同數量的參數存儲在一起的Delegate類型。 但是,每個列表可能都有一個方法列表,這些方法采用的參數與其他列表中的方法不同。

這些列表實際上將位於std::unordered_map

首先,聽起來您應該使用unordered_multimap而不是使用列表作為值的地圖。

就是說,如果您試圖將類型存儲在甚至很小的STL容器中,則需要制作一個基類並將它們存儲為指向該基類的指針。 您提到一個列表中的所有值將具有相同數量的參數,但是您未指定參數將完全相同。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM