将初始化的矢量作为引用传递时出错
Error when passing a initialized vector as a reference
我有一个函数:
std::string GraphList::_dfs(int src, std::vector<int>& visited)
我这样称呼它:
std::vector<bool> visited(NUM_V, false);
return _dfs(src, visited);
我得到以下错误:
a reference of type "std::vector<int, std::allocator<int>> &" (not const-qualified) cannot be initialized with a value of type "std::vector<bool, std::allocator<bool>>"
如果我传递一个未初始化的向量,它工作得很好,但为什么编译器在我传递初始化的向量时会抱怨呢?
您将一个vector<bool>
作为参数传递给一个函数,该函数期望对应的参数为vector<int>
,该参数属于不同类型,两种类型之间不可能进行隐式转换,因此会出现错误。
相关文章:
- 将初始化的矢量作为引用传递时出错
- 引用C++出错
- '未定义对..'的引用;将APP_STL从gnustl_static切换到c++_shared后出错
- 使用静态变量未解析的外部符号/未定义的引用时出错
- C++ 在C++中通过引用将枚举作为默认参数传递时出错
- 将 r 值引用传递给 r 值引用参数时出错
- 在给定表达式的情况下返回对类型的引用时出错:“cond ?*这个 : 投掷()'
- r-使用Rcpp模块公开带有引用参数的c++类方法时出错
- 链接webrtc本机时出错,因为未定义对具有std::string的方法的引用
- Boost Python:在函数中通过引用传递变量时出错
- 对wxLog::DoLog的未定义引用在针对wxWidget 3.0构建wxHaskell时出错
- 引用返回值时出错
- 使用嵌套结构将结构作为引用传递时出错
- 通过引用传递在 C++ 中出错
- 非常量引用类型的无效初始化中出错.在Linux操作系统中使用c++代码.GCC编译器
- C取消引用指向不完整类型的指针时出错
- 在c++上编译时出错:未定义对的引用
- 使用变量参数列表为传递的引用赋值(VS2010中出错)
- 通过引用传递函数,我在VS2012上运行它,为什么它会出错
- 使用C++中的引用从C#调用C++代码时出错