簡體   English   中英

如何檢查參數是否是`std::vector`的實例? [C++]

[英]How to check if a paramter is an instance of `std::vector`? [C++]

我有一個 function 接受泛型類型 T 的參數。它會根據obj的類型做不同的事情。

template <typename T>
void function(const T& obj)
{
    if constexpr (/* is a vector */) {}
    else if constexpr (/* is an unordered map */) {}
    // ...
    else {}
}

所以我需要檢查obj的類型是vector ,還是unordered_map ,還是unordered_set等。

有人知道這個問題的答案嗎? 謝謝!

感謝所有的評論。 我已經寫了重載,現在它工作得很好:)

暫無
暫無

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

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