首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OpenCV Mat的逗号分隔的初始化器是如何用C++实现的?

OpenCV Mat的逗号分隔的初始化器是如何用C++实现的?
EN

Stack Overflow用户
提问于 2017-07-05 13:35:58
回答 1查看 1.2K关注 0票数 6
代码语言:javascript
复制
#include <iostream>
#include <opencv2/opencv.hpp>

using namespace std;
using namespace cv;

int main() {
    Mat a = (Mat_<double>(3, 3) << 0, 1, 2, 3, 4, 5, 6, 7, 8);

    cout << a << endl;

    return 0;
}

OpenCV Mat的逗号分隔的初始化器是如何用C++实现的?

"1“是如何在"0”之后进入Mat的?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-07-05 13:46:47

以允许初始化,如

代码语言:javascript
复制
Mat a = (Mat_<double>(3, 3) << 0, 1, 2, 3, 4, 5, 6, 7, 8);

OpenCV首次使用

代码语言:javascript
复制
template <typename T>
MatCommaInitializer_<T> operator<<(Mat_<T>&, T);

若要返回中间对象MatCommaInitializer_<T>,请执行以下操作。这个对象有一个重载的operator,,即

代码语言:javascript
复制
template <typename T2>
MatCommaInitializer_<T>& operator,(T2 v);

它将值添加到初始化器中。然后有一个构造函数

代码语言:javascript
复制
template <typename T>
explicit Mat(MatCommaInitializer_<T> const&);

若要从Mat创建MatCommaInitializer对象,请执行以下操作。

注意:您可以在OpenCV文档http://docs.opencv.org/master/ (.html)中找到此类信息。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44927829

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档