使用std :: functional vs2015中的false阳性错误
false-positive error using std::functional in vs2015
我昨天实施了一些测试功能,一切都编译和工作正常,没有错误。今天,我回到我的PC上,我的std::bind
的带下划线的红色,但没有错误。似乎IntelliSense和编译器在std::bind
类型上不同意。我该如何解决?
#include <functional>
class MyClass {
public:
int doE() {
return 0;
}
int doF() {
return 1;
}
};
void main()
{
MyClass obj;
std::function<int()> f = std::bind(&MyClass::doE, obj); // underlined red
std::cout << f();
}
错误消息如下:
Error (active) no suitable user-defined conversion from "std::_Binder<std::_Unforced, int (MyClass::*)(), MyClass &>" to "std::function<int ()>" exists functionals c:functionalsfunctionalsthirdFunctionOnObject.h
i确实具有相同的错误类型(Intellisense说有错误,但它的编译恰好)在更复杂的代码中,其中我使用了std::mem_fn().
与VS 2015 C 有同样的问题,我讨厌它。微软让我发疯。
目前,我正在通过将代码转移到静态功能来使用令人讨厌的工作。在您的情况下,它将类似于以下内容:
class MyClass {
// other code
int doE () {
return 0;
}
static int statDoE(MyClass * myClass) {
return myClass->doE();
}
}
相关文章:
- 警告处理为错误这里有什么问题
- 为什么"do while"循环不断退出,即使条件计算结果为 false?
- "error: no matching function for call to"构造函数错误
- boost::进程间消息队列引发错误
- C++,OpenCV,尝试显示图像时"OpenCV(4.3.0) Error: Assertion failed (size.width>0 && size.height>0)"此错误
- 有关插入适配器的错误。[错误]请求从 'back_insert_iterator<vector<>>' 类型转换为非标量类型
- QT在错误的班级中寻找空位
- vector.resize()中的分配错误
- 代码在main()中运行,但在函数中出现错误
- 伪造事实↔false
- 释放错误后堆使用
- QueryWorkingSet总是返回false
- (C++)分析树以计算返回错误值的简单算术表达式
- 在一个作用域中推送五个对象指针,然后检查对象的布尔值是否为 false,会给出错误
- 使用std :: functional vs2015中的false阳性错误
- 如果任何条件是错误的,如何从for循环中返回false
- 为什么enumProcessModules返回false值和299代码错误
- 如果模板的错误代码在If(false)中,我必须专门化模板吗
- 我正在尝试创建一个函数,如果一个元素在向量中,则返回 true/false,但我收到错误
- 在 cv::imshow() 中获取错误 - ASSERT:在文件 qasciikey.cpp 中"false",第 501 行