C++与C语言

C++之所以是C++,和面向过程的C语言相比,它加了一个类,还有一个是模板

 引入

C语言这种面向过程的编译语言可以将待解的问题分解成若干个子问题,面向对象程序设计则是建立在结构化程序设计方法的基础上,完全避免了结构化程序设计方法中所存在的问题。

程序=数据结构+算法(结构化程序设计)

 数据结构属于整个程序,而且程序是从开始至结束顺序执行的。对象是计算机内存的一块区域。在对象中,不但有数据而且存有代码,每个对象在功能上相互之间保持独立。

程序=对象+消息(面向对象程序设计)

以C++为例的面向对象=对象+类+继承+消息+多态

习题

一、名词解释

抽象

分类所依据的原则

封装

将抽象出来的对象的属性和行为结合成一个独立的单位,并尽可能隐藏内部细节;

1.把对象的全部属性和行为结合在一起,形成一个不可分割的独立单位。对象的私有属性只能由这个对象的行为来读取和修改。

2.尽可能隐藏对象的内部细节,对外形成一道屏障,将公有行为作为与外部链接的接口。

消息 

该机制是面向对象程序设计用于描述对象之间通信的。

二、填空题

1.目前有面向对象和面向过程两种重要的程序设计方法。

2.结构化程序设计方法中的模块由顺序、选择和循环三种基本结构。

3.在结构化程序设计方法中,程序可表示为数据结构和算法;在面向对象程序设计中,程序可表示为对象和消息

4.结构化程序设计中的基本模块是过程,而面向对象程序设计方法中的基本模块是

5.面向对象程序设计的设计方法具体有抽象性、封装性、继承性和多态性等特点。

三、选择题(以填空方式展示)

1.面向对象程序设计注重于类的设计。

2.面向对象程序设计中,把对象的属性和行为组织在同一个模块内的机制叫做封装。

3.在面向对象程序设计中,类通过接口与外界发生关系。

4.面向对象程序设计中,对象与对象之间的通信机制是消息。

5.关于C和C++的关系描述,C语言是C++的一个子集,C语言和C++是兼容的,C++对C语言进行了一些改进,C语言面向过程而C++面向对象。

6.面向对象程序设计将数据结构和算法放在一起,作为一个相互依存、不可分割的整体来处理。

7.重载不是面向对象系统中所包含的要素。

8.将数据结构和算法置于同一个函数内不能被称做数据封装,它要有数据和相关操作;一个类通过继承可以获得另一个类的特性;同一消息为不同的对象接受时,产生的行为是不一样的,这被称为多态性。

9.对象是计算机内存的一块区域,它可以存放代码和数据。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前任在代码里下毒,支付下单居然没加幂等?

首先蜗牛和大家从以下几个方面好好剖析一下接口幂等吧。 什么是接口幂等 比较专业的术语:其任意多次执行所产生的影响均与第一次执行的影响相同。 也就是多次调用的情况下,接口最终得到的结果是一致的。 那么为什么需要幂等呢? 那么哪些接…

中科院自动化所实习总结(完)

实习单位 中国科学院自动化所 工作内容 项目涉密,不便介绍 负责内容 负责完善文档,画流程图,UML类图之类的写小模块的代码 实习感悟 大概的整个过程 其实在这段实习中,我得到的最多的并不是技术上的成长,而是业…

数据结构03:栈、队列和数组 队习题01[C++]

考研笔记整理~🥝🥝 之前的博文链接在此:数据结构03:栈、队列和数组_-CSDN博客~🥝🥝 本篇作为链表的代码补充,供小伙伴们参考~🥝🥝 第1版:王道书的课后习题…

实战-后台管理系统SQL注入漏洞

对于edu来说,是新人挖洞较好的平台,本次记录一次走运的捡漏0x01 前景 在进行fofa盲打站点的时候,来到了一个后台管理处看到集市二字,应该是edu站点 确认目标身份(使用的quake进行然后去ipc备案查询) 网…

Qt实现Kermit协议(一)

1 概述 Kermit文件运输协议提供了一条从大型计算机下载文件到微机的途径。它已被用于进行公用数据传输。 其特性如下: Kermit文件运输协议是一个半双工的通信协议。它支持7位ASCII字符。数据以可多达96字节长度的可变长度的分组形式传输。对每个被传送分组需要一个确认。Kerm…

LeetCode刷题笔记之hot 100(二)

1. 322【零钱兑换】- 动态规划 题目: 给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额,返回…

关于视场角,你需要知道这些!

视场角在光学工程中又称视场,视场角的大小决定了光学仪器的视野范围。视场角又可用FOV(Field of view)表示,其与焦距的关系如下:像高 EFL*tan (半FOV);EFL为焦距;FOV为视场角。即以入瞳位置为顶…

一个包一条命令,我实现了对整个前端项目代码的校验

在现代前端开发中,代码校验与风格统一不仅是良好编程习惯的体现,更是提升项目质量、保障代码可维护性与减少潜在bug的关键环节。然而,面对诸如ESLint、Commitlint、Stylelint等多样化的校验工具,以及针对React、Vue等不同前端框架…

笔记本电脑上部署LLaMA-2中文模型

尝试在macbook上部署LLaMA-2的中文模型的详细过程。 (1)环境准备 MacBook Pro(M2 Max/32G); VMware Fusion Player 版本 13.5.1 (23298085); Ubuntu 22.04.2 LTS; 给linux虚拟机分配8*core CPU 16G RAM。 我这里用的是16bit的量化模型,…

java线程(一)--进程,多线程,synchronized和lock锁,JUC,JUnit

Java线程入门 单核CPU和多核CPU的理解 单核CPU,其实是一种假的多线程,因为在一个时间单元内,也只能执行一个线程的任务。例如:虽然有多车道,但是收费站只有一个工作人员在收费,只有收了费才能通过&#xf…

LeetCode226:反转二叉树

题目描述 给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。 解题思想 使用前序遍历和后序遍历比较方便 代码 class Solution { public:TreeNode* invertTree(TreeNode* root) {if (root nullptr) return root;swap(root->left, root…

nginx 常用功能

添加白名单配置 if ($clientRealIp ~ "192.157.34.245|17.213.126.21") {rewrite ^.*$ /403.html last;break; } 添加站点配置信息 nginx.conf 文件最后一行添加 并新建vhost 目录 include /usr/local/nginx/conf/vhost/*.conf;include vhost/*.conf;

什么是ISP住宅IP?相比于普通IP它的优势是什么?

什么是ISP住宅IP? ISP住宅IP是指由互联网服务提供商(ISP)分配给住宅用户的IP地址。它是用户在家庭网络环境中连接互联网的标识符,通常用于上网浏览、数据传输等活动。ISP住宅IP可以是动态分配的,即每次连接时都可能会…

【DevOps工具篇】 OpenLDAP的LDAP服务器(slapd)是什么?

目录 OpenLAP的LDAP服务器(slapd)是什么基本功能安全性管理性可靠性和可扩展性调优OpenLDAP的服务器基本功能简单身份验证和SASL身份验证LDAP模式OpenLDAP服务器管理LDAP服务器配置LDAP数据备份和还原slapcatslapaddslapindex

C++类复习

C类 1. 类内成员函数隐式声明为inline class Str {int x;int y 3; public:inline void fun(){std::cout<<"pf,yes!"<<std::endl;} };这段代码不会报错&#xff0c;但是类内的成员函数隐式声明为inline函数&#xff0c;不需要单独写在前面。因此将成员…

BOM系统:贯穿制造全程的管理利器

在制造行业中&#xff0c;BOM系统的应用已经成为提高生产效率、降低成本和确保产品质量的关键因素。BOM系统作为产品结构和物料清单的管理工具&#xff0c;为制造企业提供了全面的控制和协同能力。 1.产品设计与开发&#xff1a;在产品设计阶段&#xff0c;BOM系统为工程师提供…

基于自动编码器的预训练模型方法模型预训练方法RetroMAE和RetroMAE-2

文章目录 RetroMAERetroMAE详情编码解码增强解码 RetroMAE-2RetroMAE-2详情编码[CLS]解码OT解码和训练目标向量表征 总结参考资料 RetroMAE RetroMAE 出自论文《RetroMAE: Pre-Training Retrieval-oriented Language Models Via Masked Auto-Encoder》&#xff0c;是一种针对于…

ES-7.12-官方文档阅读-ILM-Automate rollover

教程&#xff1a;使用ILM自动化滚动创建index 当你持续将带有时间戳的文档index到Elasticsearch当中时&#xff0c;通常会使用数据流&#xff08;data streams&#xff09;以便可以定义滚到到新索引。这是你能够实施一个hot-warm-cold架构来满足你的性能要强&#xff0c;控制随…

OpenHarmony实战:RK3568 开发板镜像烧录指南

前言 烧录开发板是每个开发者的必修课&#xff0c;每次对系统的修改务必进行烧录测试&#xff0c;确保修改正确和不会引入新问题。 本文基于 Windows10&#xff0c;以 RK3568 开发板为例&#xff0c;指导如何烧录 OpenHarmony 镜像&#xff0c;镜像也叫固件。Hihoop&#xff…

Oracle利用BBED恢复崩溃实例(ORA-01092,ORA-00704,ORA-01578)

BBED修复数据损坏引起的数据库崩溃&#xff08;ORA-01092,ORA-00704,ORA-01578&#xff09;(2021年某苏州国企的案例&#xff09; 1.Symptom 用户一个边缘系统出现数据文件损坏&#xff0c;且没有备份&#xff0c;数据库无法启动 报错如下&#xff0c;发现是oracle bootstra…