摘要:
迭代器(iterator)是一种功能非常有限,却非常实用的函数,提供一些基本操作符。其是个所谓的智能指针,具有遍历复杂数据结构的能力。 实例:迭代器指针应用 1 #include <iostream> 2 #include <string> 3 #include <vector> 4 //迭代器it 阅读全文
posted @ 2023-08-18 15:40
一杯清酒邀明月
阅读(66)
评论(0)
推荐(0)
摘要:
C++标准库提供的向量(vector)类型从根本上解决了数组先天不足的问题(内存固定,如果不用那么多内存编译器也会为其分配) 我们用不着对一个向量能容纳多少元素做出限定,因为向量可以动态地随着你往它里面添加元素而无限增大。还可以用它的size()方法查知某给定向量的当前长度(即包含的元素个数);用p 阅读全文
posted @ 2023-08-18 15:39
一杯清酒邀明月
阅读(62)
评论(0)
推荐(0)
摘要:
内联函数从源代码层看,有函数的结构,而在编译后,却不具备函数的性质。编译时类似宏替换,使用函数体替换调用处的函数名。(在程序中,调用其函数时,该函数在编译时被替换,而不是像一般函数那样是在运行时被调用) 实例:栈 1 #include <iostream> 2 #include <string> 3 阅读全文
posted @ 2023-08-18 15:39
一杯清酒邀明月
阅读(83)
评论(0)
推荐(0)
摘要:
类模板与函数模板非常相似,同样是先由你编写一个类的模板,再由编译器在你第一次使用这个模板时生成的实际代码。 实例:栈的出入栈 1 #include <iostream> 2 #include <string> 3 4 template <class T> 5 class Stack//栈类 6 { 阅读全文
posted @ 2023-08-18 15:38
一杯清酒邀明月
阅读(65)
评论(0)
推荐(0)
摘要:
泛型编程技术支持程序员创建函数和类的蓝图(即模板,template),而不是具体的函数和类。 标准模板库STL(Standard Template Library),STL库是泛型编程技术的经典之作,它包含了许多非常有用的数据类型和算法。 当拥有一个模板时,编译器将根据模板自动创建一个函数,该函数会 阅读全文
posted @ 2023-08-18 15:37
一杯清酒邀明月
阅读(164)
评论(0)
推荐(0)
摘要:
1 header.h文件 2 3 #ifndef HEADER_H 4 #define HEADER_H 5 6 unsigned long returnFactorial(unsigned short num); 7 static const unsigned short headerNum = 阅读全文
posted @ 2023-08-18 15:36
一杯清酒邀明月
阅读(47)
评论(0)
推荐(0)
摘要:
与作用域有关的另一个概念是链接,当同时编译多个文件时,每个源文件被称为一个翻译单元,在某一个翻译单元里定义的东西在另一个翻译单元里使用正是链接发挥作用的地方。 存储类(storage class):每个变量都有一个存储类,它决定着程序将把变量的值储存在计算机的什么地方、如何存储、以及变量应该有怎样的 阅读全文
posted @ 2023-08-18 15:36
一杯清酒邀明月
阅读(60)
评论(0)
推荐(0)
摘要:
命名空间其实就是由用户定义的范围,同一个命名空间里的东西只要在这个命名空间里具有独一无二的名字就行了。 例如: 1 namespace author 2 3 { 4 5 std::string person; 6 7 } 8 9 namespace programmer 10 11 { 12 13 阅读全文
posted @ 2023-08-18 15:33
一杯清酒邀明月
阅读(78)
评论(0)
推荐(0)
摘要:
利用C++预处理器,我们可以让头文件只在这个类还没有被声明过的情况下才声明它。作为一种固定模式,这里使用常量名通常与相应的文件名保持一致(换成大写),把句号替换为下划线。例如rational.h文件对应RATIONAL_H 1 Rational.h文件 2 3 //Ration.h 4 //Crea 阅读全文
posted @ 2023-08-18 15:31
一杯清酒邀明月
阅读(57)
评论(0)
推荐(0)
摘要:
模块化:把程序划分成多个组成部分(即所谓的模块)。这是通过把程序代码分散到多个文件里,等编译程序时再把那些文件重新组合在一起实现的。 C++预处理器的#include指令提供了一种能够让编译器在编译主程序时把其他文件的内容包括进来的机制。例如用这个指令来包括iostream头文件。 实例:头文件应用 阅读全文
posted @ 2023-08-18 15:30
一杯清酒邀明月
阅读(208)
评论(0)
推荐(0)
摘要:
如果程序会运行很长时间(例如在服务器上,注意不是所有的操作系统都像windows一样每天都要重启),并且在不停地申请新的内存块,忘记释放那些已经不再有用的老内存迟早会把内存消耗殆尽,直接导致后边的new操作无法执行甚至崩溃。 动态内存是没有作用域的,所以必须由程序员来跟踪它们的使用情况,并在不需要用 阅读全文
posted @ 2023-08-18 15:29
一杯清酒邀明月
阅读(76)
评论(0)
推荐(0)
摘要:
实例1:静态强制转换 1 #include <iostream> 2 #include <string> 3 4 using namespace std; 5 class Company 6 { 7 public: 8 Company(string theName,string product); 阅读全文
posted @ 2023-08-18 15:29
一杯清酒邀明月
阅读(61)
评论(0)
推荐(0)
摘要:
我们可以把一个对象赋值给一个类型与之相同的变量,编译器将生成必要的代码把“源”对象各属性的值分别赋值给“目标”对象的对应成员。这种赋值行为称之为逐位复制。(但如果某些成员变量是指针的话,对象成员逐位复制的结果是你将拥有两个一模一样的实例,而这两个副本里的同名指针会指向相同的地址) 实例1:带指针变量 阅读全文
posted @ 2023-08-18 15:27
一杯清酒邀明月
阅读(106)
评论(0)
推荐(0)
摘要:
在函数里调用new语句为某种对象或某种基本数据类型分配一块内存,再把那块内存的地址返回给程序的主代码,主代码将使用那块内存并在完成有关操作后立刻释放。 实例1:函数或方法返回内存 1 #include <iostream> 2 using namespace std; 3 4 int *newInt 阅读全文
posted @ 2023-08-18 15:13
一杯清酒邀明月
阅读(163)
评论(0)
推荐(0)
摘要:
虽然前面讲过的用new给基本类型和对象在运行时分配内存,但它们的尺寸在编译时就已经确定下来——因为我们为之申请内存的数据类型在程序中有明确的定义,有明确的单位长度。 但有些时候,必须等到程序运行时才能确定需要申请多少内存,甚至还需要根据程序的运行情况追加申请更多的内存。 例如: int *x = n 阅读全文
posted @ 2023-08-18 15:11
一杯清酒邀明月
阅读(87)
评论(0)
推荐(0)
摘要:
到目前为止,所讲解的每个示例程序在完成它的任务时所使用的内存空间都是固定不变的。不能在程序运行期间动态增加或减少内存空间(即静态内存)。 在很多时候,需要存储的数据量到底有多大在事先往往是一个未知数,想要处理好这类情况,就需要在C++程序里使用动态内存。 动态内存由一些没有名字、只有地址的内存块构成 阅读全文
posted @ 2023-08-18 15:10
一杯清酒邀明月
阅读(73)
评论(0)
推荐(0)
摘要:
C语言和C++都有一个专门为调试而准备的工具函数 assert函数。这个函数是在assert.h库文件里定义的。 实例1:assert函数应用 1 #include <cassert> 2 //assert()函数需要有一个参数,它将测试这个输入参数的真或者假状态 3 //如果为真 Do nothi 阅读全文
posted @ 2023-08-18 15:09
一杯清酒邀明月
阅读(283)
评论(0)
推荐(0)
摘要:
让函数返回错误代码 实例:范围限制 1 #include <iostream> 2 #include <climits> 3 4 using namespace std; 5 class Factorial 6 { 7 public: 8 Factorial(unsigned short num); 阅读全文
posted @ 2023-08-18 15:07
一杯清酒邀明月
阅读(38)
评论(0)
推荐(0)
摘要:
程序出错可以分为两大类:编译时出错(complie-time error)和运行时错误(run-time error) suggest1:培养并保持一种编程风格 suggest2:认真对待编译器给出的错误/警告信息 suggest3:写代码三思而后行(先画流程图) suggest4:注意检查最基本的 阅读全文
posted @ 2023-08-18 15:07
一杯清酒邀明月
阅读(116)
评论(0)
推荐(0)
摘要:
通过虚继承某个基类,就是在告诉编译器:从当前这个类再派生出来的子类只能拥有那个基类的一个实例。 虚继承的语法: 1 class Teacher:virtual public Person 2 3 { 4 5 } 这样做的话便可以让Student和Teacher类都虚继承自Person类,编译器将确保 阅读全文
posted @ 2023-08-18 15:06
一杯清酒邀明月
阅读(93)
评论(0)
推荐(0)
摘要:
1 多继承语法: 2 3 //助教类既继承于老师类,又继承于学生类 4 class Assistant:public Teacher,public Student 5 { 6 }; 7 8 当遇到的问题无法只用一个“是一个”关系来描述的时候,就是多继承出场的时候。例即是学生,又是人,还是助教。 9 阅读全文
posted @ 2023-08-18 15:06
一杯清酒邀明月
阅读(116)
评论(0)
推荐(0)
摘要:
一般来说,在调用operator<<()重载函数时,传递给它的是哪一个流,它返回的就应该是那个流的一个引用。 实例:左移操作符重载 1 #include <iostream> 2 #include <string> 3 #include <math.h> 4 5 using namespace st 阅读全文
posted @ 2023-08-18 15:04
一杯清酒邀明月
阅读(125)
评论(0)
推荐(0)
摘要:
去重载一个操作符,应该只有在必要的时候,比如实现一种新的数据类型时,才重载操作符。 重载操作符的目的是为了让代码更容易阅读和理解。 阅读全文
posted @ 2023-08-18 15:03
一杯清酒邀明月
阅读(31)
评论(0)
推荐(0)
摘要:
所谓重载,就是重新赋予新的含义,函数重载是对一个已有的函数赋予新的含义。 运算符重载的方法是定义一个重载运算符的函数,在需要执行被重载的运算符时,系统就自动调用该运算符。也就是说,运算符重载是通过定义函数实现的,运算符重载实质是是函数的重载。 实例1:复数加法 1 #include <iostrea 阅读全文
posted @ 2023-08-18 14:56
一杯清酒邀明月
阅读(95)
评论(0)
推荐(0)
摘要:
实例1:抽象方法应用 1 //int *pointer = new int;//声明一个整型指针,并在程序运行时将它指向分配的内存空间 2 //delect *pointer;//删除指针,释放内存 3 #include <iostream> 4 #include <string> 5 6 usin 阅读全文
posted @ 2023-08-18 14:55
一杯清酒邀明月
阅读(145)
评论(0)
推荐(0)
摘要:
TIPS: 引发问题的源头是我们使用了new在程序运行的时候才为dog和cat分配Dog类型和Cat类型的指针。这些都是它们在运行时才分配的类型,和它们在编译时的类型是不一样的。 如果拿不准要不要把某种方法声明为虚方法,那么就把它声明为虚方法好了。 在基类里把所有的方法都声明为虚方法会让最终的可执行 阅读全文
posted @ 2023-08-18 14:54
一杯清酒邀明月
阅读(83)
评论(0)
推荐(0)
摘要:
规则: 静态成员是所有对象共享的,所以不能在静态方法里访问非静态的元素。(因为每个对象都有自己的this指针,静态方法不是属于某个特定的对象,而是由全体对象共享的,静态成员存储地址与对象并不在一起) 非静态方法可以访问类的静态成员,也可以访问类的非静态成员。 this指针是类的一个自动生成、自动隐藏 阅读全文
posted @ 2023-08-18 14:53
一杯清酒邀明月
阅读(87)
评论(0)
推荐(0)
摘要:
面对对象编程技术的一个重要特征是用一个对象把数据和对数据处理的方法封装在一起。 在前面的例子里,我们一直是在使用对象(也可以说某个类的实例)来调用方法,每个方法只处理调用它的那个对象所包含的数据,所有的数据都属于同一个对象。 C++允许我们把一个或多个成员声明为属于某个类,而不是仅属于该类的对象。( 阅读全文
posted @ 2023-08-18 14:52
一杯清酒邀明月
阅读(114)
评论(0)
推荐(0)
摘要:
友元关系是类之间的一种特殊关系,这种关系不仅允许友元类访问对方的public方法和属性,还允许友元访问对方的protected和private方法和属性。 实例1:友元关系访问保护量 1 #include <iostream> 2 #include <string> 3 4 using namesp 阅读全文
posted @ 2023-08-18 14:52
一杯清酒邀明月
阅读(58)
评论(0)
推荐(0)
摘要:
覆盖是指派生类函数覆盖基类函数(函数名字参数相同且基类函数必须有virtual关键字) 以上学习可知可以通过创建新的子类来重用现有的代码(继承) 当我们需要在基类里提供一个通用的函数,但在它的某个子类里需要修改这个方法的实现,覆盖(overriding)就可以做到。 实例1:覆盖应用 1 //级别 阅读全文
posted @ 2023-08-18 14:51
一杯清酒邀明月
阅读(126)
评论(0)
推荐(0)
摘要:
访问控制:C++提供用来保护(保护意思是对谁可以调用某个方法和访问某一个属性加上一个限制)类里的方法和属性的手段 实例1:访问级别应用 1 //级别 允许谁来访问 2 //public 任何代码 3 //protected 这个类本身和它的子类 4 //private 只有这个类本身 5 #incl 阅读全文
posted @ 2023-08-18 14:49
一杯清酒邀明月
阅读(63)
评论(0)
推荐(0)
摘要:
实例1:构造器及其参数的继承应用 1 #include <iostream> 2 #include <string> 3 4 class Animal//定义Animal类 5 { 6 public: 7 std::string mouth; 8 std::string name; 9 10 Ani 阅读全文
posted @ 2023-08-18 14:48
一杯清酒邀明月
阅读(71)
评论(0)
推荐(0)
摘要:
this指针指的是指向当前类生成的对象 继承机制使得程序员可以创建一个类的堆叠层次结构,每个子类均将继承在它的基类定义的方法和属性。 简单地说,就是通过继承机制,可以对现有的代码进行进一步扩展,并应用到新的程序中。 基类可以派生出其它的类,也称为父类或超类(如动物类) 子类是从基类派生出来的类(如乌 阅读全文
posted @ 2023-08-18 14:47
一杯清酒邀明月
阅读(91)
评论(0)
推荐(0)
摘要:
构造器和通常方法的主要区别: 1、构造器的名字必须和它所在类的名字一样 2、系统在创建某个类的对象时会第一时间自动调用这个类的构造器 3、构造器永远不会返回任何值 实例1:构造器的运用 1 #include <iostream> 2 3 #define FULL_GAS 85 4 5 class C 阅读全文
posted @ 2023-08-18 14:17
一杯清酒邀明月
阅读(149)
评论(0)
推荐(0)
摘要:
对象本质上不过是一种新的数据类型。 类(class)是一个模型(就像是一张蓝图,它决定一个对象将拥有什么样的属性、功能等),且每个类跟变量一样都有一个名字。当我们为这个类创建实例的时候,也就是对象(类的具体化实现)。 类由变量(类里的变量称属性)和函数(类里的函数称方法)组成,对象将使用那些变量来存 阅读全文
posted @ 2023-08-18 14:16
一杯清酒邀明月
阅读(54)
评论(0)
推荐(0)
摘要:
联合(union)与结构有很多相似之处,联合也可以容纳多种不同类型的值,但是它每次只能储存这些值中的一个(即当我们已经给联合里的一个成员赋值后,再给另一个成员赋值时,将丢弃第一个成员的值)。 实例1:联合的应用 1 #include <iostream> 2 3 union mima 4 { 5 u 阅读全文
posted @ 2023-08-18 14:15
一杯清酒邀明月
阅读(76)
评论(0)
推荐(0)
摘要:
实例1:值传递 1 #include<iostream> 2 3 void changeAge(int age,int newAge); 4 int main() 5 { 6 int age = 24;//定义一个age,占一处地址 7 std::cout << "My age is " << ag 阅读全文
posted @ 2023-08-18 14:14
一杯清酒邀明月
阅读(95)
评论(0)
推荐(0)
摘要:
结构是一种由程序员自己定义的、由其他变量类型组合而成的数据类型。其所能包含的变量的个数是没有限制的。 实例1:简单数据库读写 1 #include <iostream> 2 #include <fstream> //文件操作 3 #include <windows.h> // 为了使用Sleep() 阅读全文
posted @ 2023-08-18 14:12
一杯清酒邀明月
阅读(81)
评论(0)
推荐(0)
摘要:
计算机是把数组以一组连续的内存块保存的。 数组的第一个元素的地址为该数组的基地址。 实例1:数组元素地址打印 1 #include <iostream> 2 3 using namespace std; 4 5 int main() 6 { 7 const unsigned short ITEMS 阅读全文
posted @ 2023-08-18 14:10
一杯清酒邀明月
阅读(70)
评论(0)
推荐(0)
摘要:
指针的类型必须与由它保存其地址的变量的类型一致,当某个变量的地址给了指针p时,就可以通过*p(即表示该地址的数据)来对该变量数据进行操作 一定要牢记一个事实:指针所保存的是内存中的一个地址,它并不保存指向的数据的值本身。因此务必确保指针对应一个已经存在的变量或者一块已经分配的内存 *有两种用途,一是 阅读全文
posted @ 2023-08-18 14:09
一杯清酒邀明月
阅读(49)
评论(0)
推荐(0)
摘要:
小知识:程序以文件的形式存储在硬盘,但它们却是在计算机的内存中运行 对于变量可以通过变量名与地址两种方式进行索引,变量的地址在程序执行期间是不会发生变换的 地址是计算机内存中的某个位置;指针是专门用来存放地址的特殊类型变量 阅读全文
posted @ 2023-08-18 14:07
一杯清酒邀明月
阅读(52)
评论(0)
推荐(0)
摘要:
数组:可以把许多个同类型的值存储在同一变量名下 实例1:输入的数据存储到数组中,并计算其和与平均值输出 1 #include <iostream> 2 3 using namespace std;//使用作用域 4 5 int main() 6 { 7 int array[10]; 8 int i; 阅读全文
posted @ 2023-08-18 14:06
一杯清酒邀明月
阅读(66)
评论(0)
推荐(0)
摘要:
函数重载:实质就是用同样的名字再定义一个有着不同参数类型及个数来实现不同操作的函数。 实例1:改变同一函数的输入参数类型 1 #include <iostream> 2 3 void convertTemperature(double tempIn, char typeIn); 4 void con 阅读全文
posted @ 2023-08-18 14:05
一杯清酒邀明月
阅读(92)
评论(0)
推荐(0)
摘要:
实例1:根据输入内容输出 1 #include<iostream> 2 using namespace std;//名字空间 3 int main() 4 { 5 char answer; 6 7 cout << "请问可以格式化您的硬盘吗?!【Y/N】" << "\n"; 8 cin >> ans 阅读全文
posted @ 2023-08-18 14:04
一杯清酒邀明月
阅读(132)
评论(0)
推荐(0)
摘要:
ifream与ofream分别为文件读取类和文件写入类 实例1:文件读取(读取同一文件夹的test.txt文件内容) 1 #include <fstream>// 涉及到了文件流操作 2 #include <iostream> 3 4 using namespace std; 5 6 int mai 阅读全文
posted @ 2023-08-18 14:03
一杯清酒邀明月
阅读(128)
评论(0)
推荐(0)
摘要:
实例1:忽略输入字符串的前面部分字符输出 1 #include <iostream> // 2 3 using namespace std;//名字空间 4 5 int main() 6 { 7 char buf[20];//只能存放19个字符,因为字符串以0结尾 8 9 cin.ignore(7) 阅读全文
posted @ 2023-08-18 14:00
一杯清酒邀明月
阅读(275)
评论(0)
推荐(0)
摘要:
cout(cout << i表示变量i流向屏幕显示)是一个输出流对象,属于basic_ostream类的对象。ostream类在iostream头文件中定义。同理cin(回车后,键盘输入缓冲区内容流向cin流的内部缓冲区,cin >> xx操作便从这个缓冲区提取数据,即键盘输入流向程序)为输入流对象 阅读全文
posted @ 2023-08-18 13:58
一杯清酒邀明月
阅读(86)
评论(0)
推荐(0)
摘要:
OO思想:每个对象都是一个完整的独立的个体,由相关的属性和行为组合与外界分隔。其思想就是将一切事物都看做一个对象,由于一个再复杂的模型结构都是由千千万万个对象组成的。从而使程序员不再面对一个个函数与变量,而是放眼全局,面对一个个对象。 OO思想的特点: 1封装:把对象的属性和方法结合成一个独立的系统 阅读全文
posted @ 2023-08-18 13:55
一杯清酒邀明月
阅读(129)
评论(0)
推荐(0)
摘要:
1 #include <opencv2/opencv.hpp> 2 #include <opencv2/dnn.hpp> 3 #include <iostream> 4 5 using namespace cv; 6 using namespace cv::dnn; 7 using namespac 阅读全文
posted @ 2023-08-18 09:26
一杯清酒邀明月
阅读(90)
评论(0)
推荐(0)
摘要:
1 #include <opencv2/opencv.hpp> 2 #include <opencv2/dnn.hpp> 3 #include <iostream> 4 5 using namespace cv; 6 using namespace cv::dnn; 7 using namespac 阅读全文
posted @ 2023-08-18 09:25
一杯清酒邀明月
阅读(174)
评论(0)
推荐(0)
摘要:
1 #include <opencv2/opencv.hpp> 2 #include <opencv2/dnn.hpp> 3 #include <iostream> 4 5 using namespace cv; 6 using namespace cv::dnn; 7 using namespac 阅读全文
posted @ 2023-08-18 09:24
一杯清酒邀明月
阅读(148)
评论(0)
推荐(0)
摘要:
1 #include <opencv2/opencv.hpp> 2 #include <opencv2/dnn.hpp> 3 #include <iostream> 4 5 using namespace cv; 6 using namespace cv::dnn; 7 using namespac 阅读全文
posted @ 2023-08-18 09:22
一杯清酒邀明月
阅读(79)
评论(0)
推荐(0)
摘要:
1 #include <opencv2/opencv.hpp> 2 #include <opencv2/dnn.hpp> 3 #include <iostream> 4 5 using namespace cv; 6 using namespace cv::dnn; 7 using namespac 阅读全文
posted @ 2023-08-18 09:21
一杯清酒邀明月
阅读(133)
评论(0)
推荐(0)
摘要:
1 #include <opencv2/opencv.hpp> 2 #include <opencv2/dnn.hpp> 3 #include <iostream> 4 //使用Googlenet Caffe模型实现图像分类 5 using namespace cv; 6 using namespa 阅读全文
posted @ 2023-08-18 09:20
一杯清酒邀明月
阅读(117)
评论(0)
推荐(0)
摘要:
1 #include <opencv2/opencv.hpp> 2 #include <opencv2/dnn.hpp>//dnn模块类 3 #include <iostream> 4 5 using namespace cv; 6 using namespace std; 7 8 int main 阅读全文
posted @ 2023-08-18 09:07
一杯清酒邀明月
阅读(74)
评论(0)
推荐(0)
摘要:
1 #include <opencv2/opencv.hpp> 2 #include <iostream> 3 4 using namespace cv; 5 using namespace std; 6 7 Mat replace_and_blend(Mat &frame, Mat &mask); 阅读全文
posted @ 2023-08-18 09:00
一杯清酒邀明月
阅读(268)
评论(0)
推荐(0)
摘要:
1 #include <opencv2/opencv.hpp> 2 #include <iostream> 3 4 using namespace cv; 5 using namespace std; 6 7 Mat mat_to_samples(Mat &image); 8 int main(in 阅读全文
posted @ 2023-08-18 08:58
一杯清酒邀明月
阅读(110)
评论(0)
推荐(0)
摘要:
1 #include <opencv2/opencv.hpp> 2 #include <iostream> 3 #include <math.h> 4 5 using namespace cv; 6 using namespace std; 7 8 int numRun = 0; 9 Rect re 阅读全文
posted @ 2023-08-18 08:57
一杯清酒邀明月
阅读(91)
评论(0)
推荐(0)
摘要:
1 #include <opencv2/opencv.hpp> 2 #include <iostream> 3 4 using namespace cv; 5 using namespace std; 6 7 Mat watershedCluster(Mat &image, int &numSegm 阅读全文
posted @ 2023-08-18 08:56
一杯清酒邀明月
阅读(93)
评论(0)
推荐(0)
摘要:
1 #include <opencv2/opencv.hpp> 2 #include <iostream> 3 4 using namespace cv; 5 using namespace std; 6 7 int main(int argc, char** argv) { 8 Mat src = 阅读全文
posted @ 2023-08-18 08:55
一杯清酒邀明月
阅读(250)
评论(0)
推荐(0)
摘要:
1 #include <opencv2/opencv.hpp> 2 #include <iostream> 3 4 using namespace cv; 5 using namespace cv::ml; 6 using namespace std; 7 8 int main(int argc, 阅读全文
posted @ 2023-08-18 08:54
一杯清酒邀明月
阅读(154)
评论(0)
推荐(0)
摘要:
1 #include <opencv2/opencv.hpp> 2 #include <iostream> 3 4 using namespace cv; 5 using namespace cv::ml; 6 using namespace std; 7 8 int main(int argc, 阅读全文
posted @ 2023-08-18 08:53
一杯清酒邀明月
阅读(88)
评论(0)
推荐(0)
摘要:
1 #include <opencv2/opencv.hpp> 2 #include <iostream> 3 4 using namespace cv; 5 using namespace std; 6 7 int main(int argc, char** argv) { 8 Mat src = 阅读全文
posted @ 2023-08-18 08:52
一杯清酒邀明月
阅读(81)
评论(0)
推荐(0)
摘要:
1 #include <opencv2/opencv.hpp> 2 #include <iostream> 3 4 using namespace cv; 5 using namespace std; 6 7 int main(int argc, char** argv) { 8 Mat img(5 阅读全文
posted @ 2023-08-18 08:51
一杯清酒邀明月
阅读(75)
评论(0)
推荐(0)
摘要:
1 #include <opencv2/opencv.hpp> 2 #include <iostream> 3 4 using namespace cv; 5 6 int main(int argc, char** argv) 7 { 8 Mat src = imread("toux.jpg");/ 阅读全文
posted @ 2023-08-18 08:50
一杯清酒邀明月
阅读(43)
评论(0)
推荐(0)
浙公网安备 33010602011771号