C ++中Vector <char>的默认值是什么?</char>

时间:2015-01-26 21:58:22

标签: c++

一个简单的问题,但我无法在网上或我正在使用的教科书中找到确凿的答案:

我有一个Map<string, Vector<char>>,我需要知道我使用的字符串键是否是Map中定义的键。我知道如果密钥未定义,.get(key)将返回值类型的默认值,但我不确定Vector<char>的默认值是什么。

4 个答案:

答案 0 :(得分:2)

它是std::vector<char>()。 另外可以说默认构造函数生成该特定类的默认对象。

答案 1 :(得分:1)

  

我不确定vector<char >的默认值是什么

它将是一个默认构造的std::vector对象。

但是,检测map是否具有与给定密钥对应的条目的更好方法是使用find并检查返回的值是否为可解除引用的iterator

if ( myMap.find(myKey) != myMap.end() )
{
   // The map has an entry corresponding to myKey
}
else
{
   // The map does not have an entry corresponding to myKey
}

答案 2 :(得分:0)

默认vector<char>将是使用默认构造函数构造的,因此与执行相同:

std::vector<char> charVector;

这样的矢量将是空的,而且几乎可以说是关于它的所有内容。

答案 3 :(得分:-1)

std::vector<char>默认为空矢量。