首页 > 其他分享 >OPP实验三

OPP实验三

时间:2024-11-04 17:21:05浏览次数:3  
标签:OPP string button v1 vector 实验 const 拷贝

任务一、

    

 

问题1

自定义了两个类,分别是window和button类,引用了标准库vector和string类

window---{string,button vector}

button----{string}

问题2

 这个函数可以使用inline来修饰,它的逻辑简单,使用可以优化程序

不可以使用const,内部的button和click都不是const类型

问题3

功能是创建一个有40个‘*’的字符串

任务二、

问题1、

第一行初始化v1,第二行深拷贝,第三行,改变v1第0个元素的值

问题2、

同上,但是v2被声明成了const,经过实验,表示v2不可更改,v2中的元素不能更改

 问题3、

39-43行代码,t1深拷贝v1的0号元素,打印v1的最后一个元素,t2同理,const我不加仍然可以运行

问题4、

vector中都是深拷贝,甚至二维的都是深拷贝

at()需要一个const成员函数作为接口,可以增加接口的丰富度(其他不太明白)

任务三

问题1、 

是深拷贝、

问题2、

改成int&就没用啦,因为返回的就无法继续操作了

如果去掉了可以假设一个场景:
   我们创建了一个const的对象,调用了这个const的at函数,但是可能会返回一个非const的解引用类型回来,

这个返回值是没有const的,那么我们的const就会被小贼篡改

 

标签:OPP,string,button,v1,vector,实验,const,拷贝
From: https://www.cnblogs.com/xuyi5448/p/18525834

相关文章

  • 实验2
    1#pragmaonce23#include<string>45//类T:声明6classT{7//对象属性、方法8public:9T(intx=0,inty=0);//普通构造函数10T(constT&t);//复制构造函数11T(T&&t);//移动构造函数12~T()......
  • 7.2、实验二:被动接口和单播更新
    源文件链接:7.2、实验二:被动接口和单播更新:https://url02.ctfile.com/d/61945102-63671890-6af6ec?p=2707(访问密码:2707)一、被动接口1.介绍定义:在路由协议的配置中,一个被动接口指的是一个接口不发送路由更新包的配置方式,但仍然可以接收和处理传入的路由更新。作用:......
  • 实验3 串的实现
    c++:string就是一个数组看成str[N]数组就可以了,其他的好像都一样!点击查看代码#include<iostream>#include<string>usingnamespacestd;constintN=1e7+5;structstrs{stringst;intlen;}s,c,c1,c2;intnext1[N];intmumo(){cout<<"您可以......
  • 华为eNSP实验:MAC地址漂移
    MAC地址漂移是指在同一个VLAN内,一个MAC地址有两个出接口,并且后学习到的出接口覆盖原出接口的现象。MAC地址漂移是网络设备(如交换机)上的一种现象,它发生在当同一个VLAN内有两个或多个端口学习到同一个MAC地址时,后学习到的MAC地址表项会覆盖原有的表项。这种现象通常意味着网络......
  • 实验8:适配器模式
    [实验任务一]:双向适配器实现一个双向适配器,使得猫可以学狗叫,狗可以学猫抓老鼠。实验要求:1. 对应的类图: 2. 源代码:Cat接口: publicinterfaceCat{  voidcry();  voidcatchMouse();} 实体Cat类: publicclassConcreteCatimplementsCat{    @Over......
  • 20222310 2024-2025-1 《网络与系统攻防技术》实验四实验报告
    一、实验内容(一)恶意代码文件类型标识、脱壳与字符串提取对提供的rada恶意代码样本,进行文件类型识别,脱壳与字符串提取,以获得rada恶意代码的编写作者,具体操作如下:(1)使用文件格式和类型识别工具,给出rada恶意代码样本的文件格式、运行平台和加壳工具;(2)使用超级巡警脱壳机等脱壳软件,......
  • 实验9:桥接模式
    [实验任务一]:两个维度的桥接模式用桥接模式实现在路上开车这个问题,其中,车可以是car或bus,路可以是水泥路或沥青路。 1.类图   1. 源代码1.Car.javapackagetest9; publicclassCarimplementsVehicle{    @Override    publicvoiddrive(){   ......
  • 20222425 2024-2025-1 《网络与系统安全技术》实验四报告
    202224252024-2025-1《网络与系统安全技术》实验四报告目录1.实践内容2.实践过程2.1恶意代码样本的文件类型识别,脱壳与字符串提取2.1.1使用文件格式和类型识别工具,给出rada恶意代码样本的文件格式、运行平台和加壳工具2.1.2使用脱壳软件,对rada恶意代码样本进行脱壳处理......
  • 数据科学实验三 死亡原因分析
    一、实验目标和要求对墨西哥的个体死亡记录和死亡原因数据进行分析,掌握数据处理的三类主要工具:数据操作、数据可视化、数据建模。二、实验环境百度飞桨三、实验内容¶1)数据操作:读入数据文件deaths.xlsx和icd-main.xlsx,对数据进行筛选、去空值、分组统计等操作,计算出每......