1.25 C++ day2

思维导图

自己封装一个矩形类(Rect),拥有私有属性:宽度(width)、高度(height),

定义公有成员函数:

初始化函数:void init(int w, int h)

更改宽度的函数:set_w(int w)

更改高度的函数:set_h(int h)

输出该矩形的周长和面积函数:void show()

代码:

#include <iostream>

using namespace std;

class Rect//定义一个矩形类
{
private://表示私有属性
    int width;//矩形的宽
    int height;//矩形的高
public://表示公共属性
    void init(int w,int h)//矩形的宽和高的初始化函数
    {
        cout << "please enter the rectangle's height:" ;
        cin >> height;//从终端输入矩形的高
        cout << "please enter the rectangle's width:" ;
        cin >> width;//从终端输入矩形的宽
    }
    void set_w(int w)
    {
        cout << "please enter changed width:" ;
        cin >> width;//从终端输入更改后的宽
    }
    void set_h(int h)
    {
        cout << "please enter changed height:" ;
        cin >> height;//从终端输入更改后的高
    }
    void show()
    {
        int perimeter=(height+width)*2;//求矩形的周长
        int area=height*width;//求矩形的面积
        cout << "The rectangle's perimeter is " << perimeter << endl;//输出矩形的周长
        cout << "The rectangle's area is " << area << endl;//输出矩形的面积
    }
};

int main()
{
    Rect a;//用矩形类定义一个矩形a
    int w,h;//定义矩形的宽和高
    a.init(w,h);//初始化
    a.show();//输出矩形的周长和面积
    a.set_w(w);//更改矩形的宽
    a.set_h(h);//更改矩形的高
    a.show();//输出更改后的矩形的周长和面积
    return 0;
}

结果:

模拟面试

一.什么是内存泄漏,如何避免

答:内存泄漏是程序在位变量申请空间之后没有及时释放,随着时间的推移,内存泄漏会导致可用内存逐渐减少,最终导致程序崩溃或者系统运行缓慢

如何避免:及时释放内存

二.解释一下C语言中的堆和栈

答:堆区:

1. 由程序员手动申请、手动释放内存。

2. 堆区需要满足队列的思想,先进先出,变量先定义先分配内存,从小地址到大地址申请。

3. 堆区内存大小几G。

4. 堆区申请容易出现碎片化,借助链表实现,在堆区内存中依次遍历变量所需内存大小,

当找到合适的申请大小,则从链表中删除,把该内存分配给变量。

栈区:

1. 由计算机自动申请、自动释放内存。

2. 栈区需要满足栈的思想实现,先进后出,变量先定义后分配内存,从大地址到小地址申请。

3. 栈区内存大小几M。

4. 栈区会出现栈溢出情况。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/349871.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

vue实现甘特图

目录 实现效果 一、安装依赖 二、使用 二、绕过license 实现效果 一、安装依赖 npm i --save vue-gantt-schedule-timeline-calendar 实现甘特图需先安装上述依赖&#xff0c;安装依赖实际上是通过gantt-schedule-timeline-calendar来实现的。所以node_module中因包含以下…

SpringBlade微服务开发平台

采用前后端分离的模式&#xff0c;前端开源两个框架&#xff1a;Sword (基于 React、Ant Design)、Saber (基于 Vue、Element-UI)后端采用SpringCloud全家桶&#xff0c;并同时对其基础组件做了高度的封装&#xff0c;单独开源出一个框架&#xff1a;BladeToolBladeTool已推送至…

视频占内存太大如何压缩?3种简单有效的方法~

很多时候我们需要压缩视频大小&#xff0c;比如节省存储空间、满足平台上传要求等&#xff0c;下面就给大家总结了几个简单且好用的视频压缩技巧&#xff0c;需要的朋友快来学起来~ 方法一&#xff1a;嗨格式压缩大师 嗨格式压缩大师是一款专业的压缩软件&#xff0c;可以压缩…

2024年新提出的算法:一种新的基于数学的优化算法——牛顿-拉夫森优化算法|Newton-Raphson-based optimizer,NRBO

1、简介 开发了一种新的元启发式算法——Newton-Raphson-Based优化器&#xff08;NRBO&#xff09;。NRBO受到Newton-Raphson方法的启发&#xff0c;它使用两个规则&#xff1a;Newton-Raphson搜索规则&#xff08;NRSR&#xff09;和Trap Avoidance算子&#xff08;TAO&#…

【JavaSE】P114~P147 ArrayList集合,Scanner类,Random,字符串及相关常用方法,静态static

目录 1 ArrayList 集合装箱&#xff0c;拆箱及包装类 2 API 概述和使用Scanner类匿名对象Random生成随机数 3 字符串字符串的31种构造方法字符串的常量池equals和 字符串的获取相关方法字符串的截取方法字符串的转换相关方法字符串的分割方法 4 静态static关键字静态static的内…

【python】爬取豆瓣影评保存到Excel文件中【附源码】

欢迎来到英杰社区https://bbs.csdn.net/topics/617804998 【往期相关文章】 爬取豆瓣电影排行榜Top250存储到Excel文件中 爬取豆瓣电影排行榜TOP250存储到CSV文件中 爬取知乎热榜Top50保存到Excel文件中 爬取百度热搜排行榜Top50可视化 爬取斗鱼直播照片保存到本地目录 爬…

qwt的极坐标画雷达方向图

qwt的极坐标画天线方向图 请先看这位博主的专业文章&#xff0c;上面有权威讲解 方向图 曲线方程&#xff1a;matlab&#xff0c;引用博主的公式 f3e10;lamda(3e8)/f;beta2.*pi/lamda; n2; t0:0.01:2*pi;dlamda/4; Wbeta.*d.*cos(t);z1((n/2).*W)-n/2*beta*d;z2((1/2).*W)-1/2…

node.js漏洞总结

js开发的web应用和php/Java最大的区别就是js可以通过查看源代码的方式查看到编写的代码&#xff0c;但是php/Java的不能看到&#xff0c;也就是说js开发的web网页相当于可以进行白盒测试。 流行的js框架有&#xff1a; 1. AngularJS 2. React JS 3. Vue 4. jQuery 5. Backbone…

ChatGPT 和文心一言 | 两大AI助手哪个更胜一筹

欢迎来到英杰社区&#xff1a; https://bbs.csdn.net/topics/617804998 欢迎来到阿Q社区&#xff1a; https://bbs.csdn.net/topics/617897397 &#x1f4d5;作者简介&#xff1a;热爱跑步的恒川&#xff0c;致力于C/C、Java、Python等多编程语言&#xff0c;热爱跑步&#xff…

C++ qt标题栏组件绘制

本博文源于笔者在学习C qt制作的标题栏组件&#xff0c;主要包含了&#xff0c;最小化&#xff0c;最大化&#xff0c;关闭。读者在看到这篇博文的时候&#xff0c;可以直接查看如何使用的&#xff0c;会使用了&#xff0c;然后进行复制粘贴源码部分即可。 问题来源 想要制作…

JS-M端事件

移动端也有自己独特的地方。比如触屏事件touch&#xff08;也称触摸事件&#xff09;&#xff0c;Android和IOS都有。 1&#xff09;touch对象代表一个触摸点。触摸点可能是一根手指&#xff0c;也可能是一根触摸笔。触屏事件可响应用户手指&#xff08;或触控笔&#xff09;对…

mysql高可用设计,主库挂了怎么办

实际上高可用就是系统能提供的一种无故障服务能力&#xff0c;就是避免宕机出现不能服务的场景。 首先来说对于无状态服务的高可用设计是比较简单的&#xff0c;发现有不能用的就直接停了换别的服务器就行&#xff0c;比如Nginx。这里说一下无状态服务就是不需要记录你的状态、…

redo log

问&#xff1a;redo log是什么&#xff1f;拿来干嘛的&#xff1f; 现象&#xff1a;如果提交一个事务&#xff0c;就刷新一次磁盘。那么会存在如下问题&#xff1a; 1、单改一条记录&#xff0c;至少都是刷新一个页&#xff0c;造成大量的磁盘I/O浪费 2、随机I/O比连续I/O慢&a…

智能洗地机哪款好用?全能型洗地机推荐

家庭清洁产品是我们生活中熟悉的存在&#xff0c;对于注重清洁的家庭来说&#xff0c;在选择清洁用品时不可避免地会考虑洗地机。相比传统的拖把&#xff0c;使用洗地机确实给人更好的体验。从理论上来说&#xff0c;洗地机作为一种吸尘和拖地一体的清洁工具&#xff0c;能够应…

智能照明控制系统智能化管理

传统的照明控制系统和智能照明控制系统之间的区别&#xff1a; 传统的照明控制系统开关方式比较单一只有“开”和“关”&#xff1a;但是智能那个照明控制系统可以采用“调光模式”通过光源的调光适应不同使用场合下的不同的灯光效果&#xff0c;能够营造出不同场景的氛围感。…

(2024,-DAE,去噪 DM,去噪 AE,影响 SSRL 性能的关键成分,PCA 潜在空间)解构自监督学习的去噪扩散模型

Deconstructing Denoising Diffusion Models for Self-Supervised Learning 公和众和号&#xff1a;EDPJ&#xff08;进 Q 交流群&#xff1a;922230617 或加 VX&#xff1a;CV_EDPJ 进 V 交流群&#xff09; 目录 0. 摘要 4. 解构去噪扩散模型 4.1. 用于自监督学习的重新…

【Java面试】redis

目录 Redis 介绍Reids常用5种数据类型一个字符串类型的值能存储最大容量是多少&#xff1f;Redis 有哪些适合的场景&#xff1f;Redis的并发竞争问题如何解决?什么是缓存穿透&#xff1f;如何避免&#xff1f;什么是缓存雪崩&#xff1f;何如避免&#xff1f;Redis 中设置过期…

VISA 通过USB的接口控制 万用表,指令说明

//申明一个万用表设备&#xff0c;以及初始化配置 var session (Ivi.Visa.IMessageBasedSession)Ivi.Visa.GlobalResourceManager.Open(ID_34461A); session.FormattedIO.WriteLine("CONF:VOLT:DC"); session.FormattedIO.WriteLine("VOLT:DC:NPLC 10"); …

Linux的文件系统、软硬链接、动静态库

前要&#xff1a;本次我想给您带来关于 IO 和文件的知识&#xff0c;而文件在本系列中分为内存上的文件和磁盘上的文件。 1.文件概念 1.1.文件读写 在谈及系统接口之前&#xff0c;我们先来从 C 语言的角度来谈及一些前要知识&#xff0c;以辅助我们后续来理解系统 IO。 我们…

Web3:B站chainlink课程Lesson5遇到的小坑汇总

ethers代码 我用的ethers.js 6 &#xff0c;和视频里一样用的是5的不用看代码部分 ethers.providers.JsonRpcProvider("server") //无了 ethers.JsonRpcProvider("server") //现在的wallet.getTransactionCount() //无了 wallet.getNonce() //现在的Big…