C++初学6

C++day6
	子类的构造、析构、拷贝
		执行构造时按顺序先执行父类构造
		执行析构时,先把自己释放,再释放父类、祖父。。。
			delete掉void*类型可能会导致无法调用析构函数
		子类对象初始化新的子类对象,会自动调用父类缺省构造,再调用自己的缺省构造
			子类调用拷贝构造,需要显式调用父类拷贝构造,否则会调用父类无惨构造
	私有继承、保护继承
		private
			子类用private继承父类,public成员会变成private,是为了防止父类成员扩散
			可调用的情况
				1、该成员函数 2、友元函数
		protected
			子类用protected继承父类,public成员会变成protected,是为了防止父类成员扩散
			可调用的情况
				1、该成员函数 2、友元函数 3、他作为父类声明的子类
	多重继承、钻石继承、虚继承
		多重继承
			一个子类有多个父类,继承表按照顺序继承所有父类的属性,按照顺序调用所有父类的构造
			子类中会标记每个父类的存储位置
			子类指针转换成父类的隐式指针时,编译器自动计算父类中内存所在子类中的位置,地址会自动进行偏移计算
			名字冲突
				父类中同名成员,可正常继承,但使用时需要(类名::成员名)
		钻石继承
			继承关系构成了菱形
			访问祖先类中的成员需要(类名::成员名)
		虚继承
			virtual
			钻石继承时会造成冗余,使用虚继承可使内容只保留一份
			由子类覆盖父类,所以相同函数会在最早的祖先类中被声明,会被之后的子类覆盖,所以子类可以调用函数,但实际的内存却在祖先类中。
	虚函数、覆盖、多态
		虚函数
			virtual修饰
		覆盖
			子类覆盖父类虚函数
		多态
			子类覆盖了父类,但子类、父类的指针都可以调用该函数,不同的类调用它的结果是不同的
	覆盖和多态的条件
		覆盖(在virtual修饰下)
			父类中的函数被virtual修饰,且函数完全一致
			const修饰返回值时会直接出错
			参数的加const依旧会被覆盖
			参数的类型不同时不会被覆盖
			常函数了就不会被覆盖(const加载末尾)
		多态
			父子类之间有函数覆盖关系
			父类的指针或引用指向子类对象
			在构造、析构函数中调用虚函数,会因为作用域的不同,导致同一个函数有不同的结果
	虚函数的特点
		在构造的时候,由于子类还没有运行构造函数,所以父类的构造函数不会被覆盖
		在析构时,由于子类已经完成了析构函数,所以父类的析构函数不会再被子类的覆盖
	纯虚函数和抽象类
		纯虚函数
			在虚函数后面添加=0;
			可以不实现,但实现必须在类外
			只能在父类的构造函数、析构函数中调用
		抽象类
			成员函数中有纯虚函数,这种类叫抽象类
			抽象类不能实例化(不能创建对象)
			必须被继承
				虚函数被覆盖
					子类实例化对象
				虚函数没被覆盖
					子类变为抽象类,无法实例化
		纯抽象类
			所有成员函数都是纯虚函数
			一般用于设计接口,这种类在子类被替换后不需要修改或少量修改即可继续使用
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
目标检测(Object Detection)是计算机视觉领域的一个核心问题,其主要任务是找出图像中所有感兴趣的目标(物体),并确定它们的类别和位置。以下是对目标检测的详细阐述: 一、基本概念 目标检测的任务是解决“在哪里?是什么?”的问题,即定位出图像中目标的位置并识别出目标的类别。由于各类物体具有不同的外观、形状和姿态,加上成像时光照、遮挡等因素的干扰,目标检测一直是计算机视觉领域最具挑战性的任务之一。 二、核心问题 目标检测涉及以下几个核心问题: 分类问题:判断图像中的目标属于哪个类别。 定位问题:确定目标在图像中的具体位置。 大小问题:目标可能具有不同的大小。 形状问题:目标可能具有不同的形状。 三、算法分类 基于深度学习的目标检测算法主要分为两大类: Two-stage算法:先进行区域生成(Region Proposal),生成有可能包含待检物体的预选框(Region Proposal),再通过卷积神经网络进行样本分类。常见的Two-stage算法包括R-CNN、Fast R-CNN、Faster R-CNN等。 One-stage算法:不用生成区域提议,直接在网络中提取特征来预测物体分类和位置。常见的One-stage算法包括YOLO系列(YOLOv1、YOLOv2、YOLOv3、YOLOv4、YOLOv5等)、SSD和RetinaNet等。 四、算法原理 以YOLO系列为例,YOLO将目标检测视为回归问题,将输入图像一次性划分为多个区域,直接在输出层预测边界框和类别概率。YOLO采用卷积网络来提取特征,使用全连接层来得到预测值。其网络结构通常包含多个卷积层和全连接层,通过卷积层提取图像特征,通过全连接层输出预测结果。 五、应用领域 目标检测技术已经广泛应用于各个领域,为人们的生活带来了极大的便利。以下是一些主要的应用领域: 安全监控:在商场、银行
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值