我想要一個包裝容器的模板類,但我想根據模板參數的值選擇要包裝哪個容器。 喜歡的東西:根據模板參數包裝類型容器的模板類
template<typename T>
class A{
std::vector<T> MyContainer;
// ...
}
template<>
class A<bool>{
std::deque<bool> MyContainer;
// ...
}
但避免所有的代碼重複該模板專業化涉及。我試圖看看std::enable_if
是否可以幫助我做一些技巧,但我還沒有想到任何方法。
什麼簡單地提供容器類型作爲另一個(依賴)模板參數? – 2014-11-02 12:28:53
我不知道你的例子是否真實,但你必須知道'std :: vector'在STLibrary中已經不同了。 –
Caduchon
2014-11-02 12:35:40
@πάνταῥεῖ這太難看了。這個班的使用者不需要照顧那個。這是班級的業務,那麼班級應該照顧它。 – Kae 2014-11-02 12:35:42