我有一种感觉,lambda的类型是一个函数指针.当我进行以下测试时,我发现它是错误的(演示).
#define LAMBDA [] (int i) -> long { return 0; }
int main ()
{
long (*pFptr)(int) = LAMBDA; // ok
auto pAuto = LAMBDA; // ok
assert(typeid(pFptr) == typeid(pAuto)); // assertion fails !
}
Run Code Online (Sandbox Code Playgroud)
上面的代码是否缺少任何一点?如果不是那么,typeof用auto关键字推导出的lambda表达式是什么?
这是一个非常简单的问题,但我无法在Google或OpenCV文档中找到答案.如何在一个底部插入一个带有向量或默认数字的行cv::Mat?我试过了:
std::vector<double> v = {0, 0, 1};
m.push_back(v);
Run Code Online (Sandbox Code Playgroud)
编译,但它总是让我得到一个断言错误.做正确的方法是什么?