簡體   English   中英

C ++按值從向量中刪除元素

[英]C++ Remove element from vector by value

我環顧四周,在我看來,這個問題的共識答案就是這種方法。

template <typename T>
void removeByValue(vector<T> & vec, const T & val)
{
    vec.erase(std::remove(vec.begin(), vec.end(), val), vec.end());
}

但是,我收到錯誤error C2660: 'remove' : function does not take 3 arguments在嘗試對其進行編譯時error C2660: 'remove' : function does not take 3 arguments 為什么給我這個錯誤?

std::remove僅在包含標頭<algorithm>可用。

此處的MSDN文檔以及任何C ++參考都明確指出了這一點。

暫無
暫無

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

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