编程小问题

来源:互联网 发布:淘宝旺旺名能改吗 编辑:程序博客网 时间:2024/05/12 13:28

问:vector<vector<Point>> 什么意思


答:vector是可变数组,stl的一种,也就是大小可变的数组,vector<Point>是point数据类型的集合,简单讲就是很多point。vector<vector<Point>>就是包含很多vector<Point>的集合。

问:STL是什么

答:STL——Stand Templat Library,通用模板库,C++是由C发展出来的,C是面向过程语言,C++是面向对象的编程语言。

问:vector<vector<Point>>contours; vector<Vec4i>hierarchy;是什么意思

答:1.你这是openCV里面找边界的程序里面的语句吧。contours被定义成二维浮点型向量,这里面将来会存储找到的边界的(x,y)坐标。vector<Vec4i>hierarchy是定义的层级。这个在找边界findcontours的时候会自动生成,这里只是给它开辟一个空间。将来findContours( src, contours, hierarchy, RETR_TREE, CHAIN_APPROX_SIMPLE, Point(0, 0) );就能算出边界的坐标,存在contours里面。

       2.vector是容器 可以理解成一个可变长的数组 第一句生成一个point型的二维变量变量contours(每一维长度均可变) 第二句是生成一个Vec4i型的一维数组hierarchy <>里面写的是容器的数据类型

问:::在c++中什么意思

答:(1)表示“域操作符”  

                 例:声明了一个类A,类A里声明了一个成员函数void f(),但没有在类的声明里给出f的定义,那么在类外定义f时,  就要写成void A::f(),表示这个f()函数是类A的成员函数。  

         (2)直接用在全局函数前,表示是全局函数  

                 例:在VC里,你可以在调用API 函数里,在API函数名前加::  

         (3)表示引用成员函数及变量,作用域成员运算符  例:System::Math::Sqrt() 相当于System.Math.Sqrt()

问:关于CV8UC3

答:一般的图像文件格式使用的是 Unsigned 8bits吧,CvMat矩阵对应的参数类型就是CV_8UC1,CV_8UC2,CV_8UC3。(最后的1、2、3表示通道数,譬如RGB3通道就用CV_8UC3)而float 是32位的,对应CvMat数据结构参数就是:CV_32FC1,CV_32FC2,CV_32FC3...double是64bits,对应CvMat数据结构参数:CV_64FC1,CV_64FC2,CV_64FC3等。

问:c++中system("color )怎样用?

答:颜色属性由两个十六进制数字指定 -- 第一个为背景,第二个则为前景。每个数字可以为以下任何值之一:

    0 = 黑色       8 = 灰色
    1 = 蓝色       9 = 淡蓝色
    2 = 绿色       A = 淡绿色
    3 = 湖蓝色     B = 淡浅绿色
    4 = 红色       C = 淡红色
    5 = 紫色       D = 淡紫色
    6 = 黄色       E = 淡黄色
    7 = 白色       F = 亮白色
system("color 02");比如这个就是黑底绿字

问:什么是编译程序?

答:将某一种程序设计语言写的程序翻译成等价的另一种语言的程序的程序, 称之为编译程序(compiler) .

1 0