c++
文章平均质量分 72
开始创建于本科c++面向对象程序设计课,
作业题选自谭浩强的《c++面向对象程序设计》(第2版)
不雨_亦潇潇
流水不腐,户枢不蠹
展开
-
【opencv3】鼠标框选矩形并显示当前像素点坐标和矩形中心点坐标C++
实现目标:1)用鼠标在图中框选矩形目标,然后保存框选的图片;(2)鼠标拖动过程中要求显示框的线条以及鼠标当前像素点信息(坐标和RGB值);(3)拖动完成后单独显示框取的图像,拖动完成后cout输出框中心像素点坐标。...........................原创 2022-08-10 23:33:12 · 3413 阅读 · 0 评论 -
【opencv3】详述PnP测距完整流程(附C++代码)
1.为什么需要对摄像头进行标定?摄像头存在畸变,畸变可以拓宽视野,但会影响图像识别和测量的精度。1)相机矩阵:包括焦距(fx,fy),光学中心(Cx,Cy),完全取决于相机本身,是相机的固有属性,只需要计算一次,可用矩阵表示如下:[fx, 0, Cx;0, fy, cy;0,0,1];2) 畸变系数:畸变数学模型的5个参数 D = (k1,k2, P1, P2, k3);3)相机内参:相机矩阵和畸变系数统称为相机内参,在不考虑畸变的时候,相机矩阵也会被称为相机内参;..................原创 2022-08-09 23:32:06 · 12407 阅读 · 24 评论 -
【opencv3】滑动条调节RGB颜色阈值并输出滑动条的值
实现目标:首先对图像 RGB 色彩空间进行分割,然后根据分割出来的各个通道的图像进行二值化处理,通过滑动条可以调节二值化的阈值。如果想要从 xml 文件中读取预设阈值,并输出调节后的阈值到 xml 中,可以使用 FileStorage 类。...原创 2021-01-26 13:30:25 · 2138 阅读 · 0 评论 -
【opencv3】透视变换后帧差法检测运动物体C++
上一篇博客通过用鼠标选择特征点,完成透视变换,实现了视频视角的校正。实现目标:在透视变换的基础上,利用帧差法检测运动物体,并用矩形框出。原创 2020-12-17 12:42:12 · 448 阅读 · 0 评论 -
【opencv3】视频透视变换C++
实现目标:鼠标选中4个目标边界点,计算转换矩阵,对视频进行透视变换。原创 2020-12-17 12:31:32 · 770 阅读 · 0 评论 -
【C++之迭代器】遍历容器
题目分别收录于在线编程-语法篇-C++入门-05STL-迭代器-CPP47 迭代器遍历容器。题目描述:键盘输入 5 个整数,将这些数据保存到 vector 容器中,采用正向迭代器和反向迭代器分别遍历 vector 中的元素并输出。输入描述:输入 5 个整数输出描述:使用正向迭代器和反向迭代器分别遍历输出 vector 中的元素,元素之间使用空格隔开,两次遍历之间换行。例如:1 2 3 4 55 4 3 2 1STL标准模板库容器vector标准模板库STL的组件返回原创 2022-10-07 23:59:58 · 528 阅读 · 0 评论 -
【C++之多态】多态实现计算器功能
题目分别收录于 牛客网 在线编程-语法篇-C++入门-04面向对象-多态-CPP46 多态实现计算器功能题目描述:完善下面的代码,使程序能够正常运行。要求 BaseCalculator 类中提供 getResult() 函数(无需实现),在 AddCalculator 类中实现两个成员相加(m_A + m_B),在 SubCalculator 类中实现两个成员相减(m_A - m_B)输入描述:实现 10 和 20 的相加,20 与 10 的相减输出描述:3010代码原创 2022-09-26 20:08:56 · 665 阅读 · 0 评论 -
【C++之构造函数】键盘输入用户名和年龄
题目分别收录于 牛客网 在线编程-语法篇-C++入门-04面向对象-构造函数-CPP40 构造函数题目描述现有一个人类(Person),成员变量:姓名(string name)和年龄(int age),请给 Person 添加一个支持两个参数的构造函数,并对姓名和年龄两个成员进行初始化。输入描述:键盘输入用户名和年龄输出描述:通过 Person 类的showPerson()成员方法输出 Person 对象的姓名和年龄,中间使用空格隔开。示例1输入:原创 2022-09-10 23:07:05 · 2270 阅读 · 0 评论 -
猿创征文|【C++之new和delete运算符】创建数组
题目分别收录于 牛客网 在线编程-语法篇-C++入门-04面向对象指针-CPP29 和 CPP57new运算符和delete运算符new 运算符和 delete 运算符用来动态分配/撤销内存空间。new 运算符用来分配内存空间,delete 运算符用来撤销内存空间。new 运算符使用格式:new 类型[初值];例如:分配一个存放整型一维数组空间,且数组有n个元素:new int[n];用 new 分配数组空间时不能指定初值。delete 运算符使用格式:del原创 2022-09-06 00:06:47 · 1626 阅读 · 1 评论 -
猿创征文|【C++之友元函数与友元类】输出年龄
题目分别收录于 牛客网 在线编程-语法篇-C++入门-04面向对象指针-CPP42 和 CPP63友元一个类中可以有公用成员(public)和私有成员(private)。在类内可以访问公用成员和私有成员,在类外只能访问公用成员,而不能访问私有成员。友元比较特殊,当它与某些类建立了“朋友”关系,它可以访问与其有“朋友”关系的类中的私有成员。这种关系用关键字 friend 声明。友元包括友元函数和友元类。题目1描述在现有代码的基础上,使用友元全局函数,让程序能够正常运行。输原创 2022-09-04 17:41:52 · 787 阅读 · 0 评论 -
【C++之数组与指针2】利用指针对数组求和
本题收录于 牛客网 在线编程-语法篇-C语言入门-01指针-CC5题目描述牛牛学习了指针相关的知识,想实现一个 int cal(int *array,int n) 的函数求出长度为 n 的数组的和。输入描述:第一行输入一个正整数 n ,表示数组的长度第二行输入 n 个正整数,表示数组中每个数字的值输出描述:实现 int cal(int *array,int n) 求出数组array的和示例1输入:52 8 1 9 5输出:25原创 2022-09-02 22:30:05 · 1639 阅读 · 2 评论 -
【C++之数组与指针1】随机输入整数存入数组并用指针遍历
本题收录于 牛客网 在线编程-语法篇-C++入门-02复合类型-指针-CPP26题目描述:键盘随机输入 6 个整数,将这些数据保存到数组中,利用指针遍历数组中的元素并打印。输入描述:键盘随机输入 6 个整数输出描述:输出数组中的所有元素,每个元素中间使用空格隔开例如:10 20 30 40 50 60示例1输入:原创 2022-09-01 23:57:46 · 2123 阅读 · 0 评论 -
【C++综合设计题】多层继承和抽象基类的综合应用
题目要求:首先,声明一组多层继承关系的形状类族。从最抽象、最顶层的基类SHAPE(形状)开始,逐级向下派生出的各级子类依次为:POINT、LINE//CURVE、…..、CUBE//CUBOID//DAM。详细的派生关系如下图所示。...............原创 2021-01-20 18:07:18 · 960 阅读 · 0 评论 -
【C++之文件与文件流】f1.dat 和 f2.dat 文件的读写
题目要求:建立两个磁盘文件 f1.dat 和 f2.dat ,编程序实现以下工作:(1)从键盘输入20个整数,分别存放在两个磁盘文件中(每个文件存放10个);(2)从 f1.dat 中读入10个数,然后存放到 f2.dat 文件原有数据的后面;(3)从 f2.dat 中读入20个整数,对它们按从小到大的顺序存放到 f2.dat (不保留原来的数据)。——谭浩强的《C++面向对象程序设计》第7章习题第4小题............原创 2020-12-26 20:21:03 · 5815 阅读 · 0 评论 -
【C++之标准类型数据的格式输出2】显示字母B组成的三角形
题目要求:编程序,在显示屏上显示一个由字母B组成的三角形。——谭浩强的《C++面向对象程序设计》第7章习题第3小题原创 2020-12-24 23:42:19 · 1321 阅读 · 0 评论 -
【C++之标准类型数据的格式输出1】输入一批数值,要求保留3位小数,且上下行小数点对齐
从键盘输入一批数值,要求保留3位小数,在输出时上下行小数点对齐。——谭浩强的《C++面向对象程序设计》第7章习题第2小题。原创 2020-12-23 17:30:35 · 2687 阅读 · 0 评论 -
【C++之标准输入输出流】 判断是否符合条件并计算三角形的面积
题目要求:输入三角形的三边 a, b, c, 计算三角形的面积的公式是...构成三角形的条件是:a+b > c, b+c > a, c+a > b。编写程序,输入 a,b,c,检查 a,b,c 是否满足以上条件,如不满足,由 cerr 输出有关出错信息。——谭浩强的《C++面向对象程序设计》第7章习题第1小题.........原创 2020-12-23 10:42:30 · 1265 阅读 · 0 评论 -
【C++之纯虚函数与抽象类2】计算圆形、正方形、矩形、梯形和三角形的图形面积,并求和
题目要求:写一个程序,定义抽象基类 Shape,由它派生出5个派生类:Circle(圆形)、Square(正方形)、Rectangle(矩形)、Trapezoid(梯形)、Triangle(三角形)。用虚函数分别计算几种图形面积,并求它们的和。要求用基类指针数组,使它每一个元素指向一个派生类对象。——谭浩强的《C++面向对象程序设计》第6章习题第5小题...............原创 2020-12-11 17:09:17 · 5211 阅读 · 0 评论 -
【C++之纯虚函数与抽象类1】圆形、矩形、三角形的面积
题目要求:定义抽象基类Shape,由它派生出3个派生类: Circle(圆形)、Rectangle(矩形)、Triangle(三角形),用一个函数 printArea 分别输出以上三者的面积,3个图形的数据在定义对象时给定。——谭浩强的《C++面向对象程序设计》第6章习题第4小题.........原创 2020-12-09 22:31:07 · 4315 阅读 · 1 评论 -
【C++之类型转换】学生留校担任老师
题目要求:定义一个 Teacher(教师)类和一个 Student(学生)类,二者有一部分数据成员是相同的,例如 num, name, sex 。编写程序,将一个 Student 对象(学生)转换为Teacher(教师)类,只将以上3个相同的数据成员移植过去。可以设想为:一个学生大学毕业了,留校担任教师,他原有的部分数据对现在的教师身份来说仍然是有用的,应当保留并成为其教师的数据的一部分。.........原创 2020-12-05 21:45:51 · 1038 阅读 · 0 评论 -
【C++之重载类型转换运算符】复数与 double 数相加
题目要求:请编写程序,处理一个复数与一个 double 数相加的运算,结果存放在一个 double 型的变量 dl 中,输出 dl 的值,再以复数形式输出此值。定义 Complex(复数)类,在成员函数中包含重载类型转换运算符:operator double() {return real;}——谭浩强的《C++面向对象程序设计》第4章习题第6小题...原创 2020-12-04 22:34:56 · 2838 阅读 · 0 评论 -
【C++之运算符重载2】矩阵相加 重载运算符 “+”、“<<”、“>>”
题目要求有两个矩阵 a 和 b,均为2行3列。求**两个矩阵之和**。重载运算符 "+" ,使之能用于矩阵相加。如 c = a + b 。——谭浩强的《C++面向对象程序设计》第4章习题第4小题在第4题的基础上,重载**流插入运算符 “...原创 2020-12-03 20:26:12 · 5591 阅读 · 0 评论 -
【C++之运算符重载1】复数类 Complex 重载运算符 “+”
题目要求:定义一个复数类 Complex ,重载运算符 “+” ,使之能用于复数的加法运算。参加运算的两个运算量可以都是复数类对象,也可以其中一个是整数。例如:c1+c2, c1+i, i+c1 均合法(设 i 为整数,c1、c2为复数)。编程序,分别求两个复数之和、整数和复数之和。——谭浩强的《C++面向对象程序设计》第4章习题第3小题...原创 2020-12-03 16:25:49 · 7118 阅读 · 0 评论 -
【C++之多层继承】成员在各类的范围内的访问属性
题目要求:有以下程序结构,请分析所有成员在各类的范围内的访问属性。——谭浩强的《C++面向对象程序设计》第5章习题第6小题原创 2020-12-02 18:34:56 · 1844 阅读 · 0 评论 -
【C++之保护继承】输入和输出 num, name, sex, age, addr
题目要求:将例5.3的程序片段补充和改写成一个完整、正确的程序,用保护继承方式。在程序中应包括输入数据的函数。——谭浩强的《C++面向对象程序设计》第5章习题第3小题原创 2020-11-29 23:26:34 · 1173 阅读 · 0 评论 -
【C++之私有继承】输入和输出 num, name, sex, age, addr
题目要求:将例5.2的程序片段补充和改写成一个完整、正确的程序,用私有继承方式。在程序中应包括输入数据的函数,在程序运行时输入 num, name, sex, age, addr 的值,程序应输出以上5个数据。——谭浩强的《C++面向对象程序设计》第5章习题第2小题...原创 2020-11-26 20:40:19 · 1720 阅读 · 0 评论 -
【C++之公用继承】输入和输出 num, name, sex, age, addr
题目要求:将例5.1的程序片段补充和改写成一个完整、正确的程序,用**公用继承**方式。在程序中应包括输入数据的函数,在程序运行时输入 num, name, sex, age, addr 的值,程序应输出以上5个数据。——谭浩强的《C++面向对象程序设计》第5章习题第1小题...原创 2020-11-25 18:49:15 · 3034 阅读 · 1 评论 -
【C++之静态数据成员和静态成员函数】计算商品总销售款和平均售价
题目要求:商店销售某一商品,商店每天公布统一的折扣(discount)。同时允许销售人员在销售时灵活掌握售价(price),在此基础上,对一次购 10 件以上者,还可以享受 9.8 折优惠。请编程序,计算出当日此商品的总销售款 sum ,以及每件商品的平均售价。要求用静态数据成员和静态成员函数。...原创 2020-11-18 23:17:01 · 4672 阅读 · 2 评论 -
【C++之对象数组和对象指针2】找到成绩最高的学生
题目要求:建立一个对象数组,内放5个学生的数据(学号、成绩),设立一个函数 max ,用指向对象的指针作函数参数,在 max 函数中找到5个学生中的成绩最高者,并输出其学号。——谭浩强的《C++面向对象程序设计》第3章习题第5小题...原创 2020-11-07 23:54:00 · 2250 阅读 · 0 评论 -
【C++之对象数组和对象指针1】输出第1,3,5个学生的数据
题目要求:建立一个对象数组,内放5个学生的数据(学号、成绩),用指针指向数组首元素,输出第1,3,5个学生的数据。原创 2020-11-06 23:03:47 · 2081 阅读 · 0 评论 -
【C++之基于对象】计算3个长方柱的体积
题目要求:需要求3个长方柱的体积,请编写一个基于对象的程序。数据成员包括 length(长)、widht(宽)、height(高)。要求用成员函数实现以下功能:(1)由键盘分别输入3个长方柱的长、宽、高;(2)计算长方柱的体积;(3)输出3个长方柱的体积。——谭浩强的《C++面向对象程序设计》第2章习题第6小题......原创 2020-11-01 13:17:34 · 3550 阅读 · 1 评论 -
【C++之封装与信息隐蔽】类的公用接口与私有实现的分离
题目要求:在本章第2.3.3节中分别给出了包含类定义的头文件, student.h ,包含成员函数定义的源文件 student.cpp 以及包含主函数的源文件 main.cpp。请完善该程序,在类中增加一个对数据成员赋初值的成员函数 set_value。上机调试并运行。——谭浩强的《C++面向对象程序设计》第2章习题第4小题............原创 2020-10-29 11:02:07 · 1075 阅读 · 0 评论 -
【C++之成员函数】类外定义成员函数
题目要求:在以上程序(第2章习题第2小题)基础上进行修改:在类体内声明成员函数,在类外定义成员函数。——谭浩强的《C++面向对象程序设计》第2章习题第3小题原创 2020-10-29 11:02:00 · 6114 阅读 · 0 评论 -
【C++之函数模板】数据排序
题目要求:对n个数据进行从小到大排序,数据类型可以是整型、单精度型、双精度型,用函数模板。——谭浩强的《C++面向对象程序设计》第1章习题第14小题原创 2020-10-29 11:01:49 · 4693 阅读 · 0 评论 -
【C++之重载函数】数据排序
题目要求:对n个数据进行从小到大排序,数据类型可以是整型、单精度型、双精度型,用重载函数。——谭浩强的《C++面向对象程序设计》第1章习题第13小题原创 2020-10-29 11:01:40 · 4426 阅读 · 0 评论 -
【C++之string方法】字符串反转
题目要求:输入一个字符串,把其中的字符按逆序输出。如输入LIGHT,输出THGIL。要求使用 string 方法。——谭浩强的《C++面向对象程序设计》第1章习题第11小题原创 2020-10-29 11:01:32 · 6336 阅读 · 0 评论