指向bool的std :: vector中的对象

时间:2012-11-08 11:59:12

标签: c++ c++98

  

可能重复:
  Why vector<bool>::reference doesn’t return reference to bool?

我有一个我在单元测试中使用的模拟类。

我看起来像:

class Mock
{
public:
    ...

    static ReturnType isKeyFunction(bool* _isKey)
    {
        _isKey = &(*isKeyI++);
        ...
    }
    ...
    static std::vector<bool> isKey;
    static std::vector<bool>::iterator isKeyI;
};

因此向量填充了值,并且每次测试使用值时迭代器都会递增。

问题是代码不会编译而且我猜它是因为std :: vector被保存为位,我可以用bool *指向其中的成员。

error C2440: '=' : cannot convert from 'std::_Vb_reference<_Alloc> *' to 'bool *'

我该如何解决这个问题?

0 个答案:

没有答案