- 1 关联简介面向对象编程中的关联、聚合和组合,本文介绍面向对象编程中的关系概念。在网络上找到关联、组合和聚合的多种定义,但其中大多数都有复杂的解释,没有实际应用。这三个术语描述了类之间的不同关系。类之间五种关系(关联、聚合、组合、依赖、泛化)的解释及在 Go 中的实现示例。 2. 关联(Association)关联是两个类之间的连接,表示它们相互协作。常见的关联是通过指针来表示。实现代码 ... 1 关联简介面向对象编程中的关联、聚合和组合,本文介绍面向对象编程中的关系概念。在网络上找到关联、组合和聚合的多种定义,但其中大多数都有复杂的解释,没有实际应用。这三个术语描述了类之间的不同关系。类之间五种关系(关联、聚合、组合、依赖、泛化)的解释及在 Go 中的实现示例。 2. 关联(Association)关联是两个类之间的连接,表示它们相互协作。常见的关联是通过指针来表示。实现代码 ...
- C++ 深入理解函数重载:概念、规则与应用函数重载是 C++ 中的一种重要特性,允许在同一作用域内定义多个同名函数,但这些函数的参数列表必须不同。通过函数重载,可以提高代码的可读性和灵活性。 应用场景简化 API:为同一功能提供多种调用方式。类型安全:根据参数类型自动选择正确的函数。运算符重载:通过函数重载实现自定义类型的运算符行为。模板编程:结合模板实现更灵活的函数重载。 原理解释 函数... C++ 深入理解函数重载:概念、规则与应用函数重载是 C++ 中的一种重要特性,允许在同一作用域内定义多个同名函数,但这些函数的参数列表必须不同。通过函数重载,可以提高代码的可读性和灵活性。 应用场景简化 API:为同一功能提供多种调用方式。类型安全:根据参数类型自动选择正确的函数。运算符重载:通过函数重载实现自定义类型的运算符行为。模板编程:结合模板实现更灵活的函数重载。 原理解释 函数...
- 前言当我们学习完c++中类和对象以及动态内存管理的相关知识之后,就可以初步了解STL(标准模板库)并进行学习了。当然,在这之前,有一个关键知识的学习,那就是模板。本篇文章博主就和大家一起探讨模板相关的基础知识。 一、问题引入–泛型编程当我们需要针对各种类型的数据实现交换函数时,实现的结果可能是这样的:void Swap(int& x, int& y){ int t = x; x... 前言当我们学习完c++中类和对象以及动态内存管理的相关知识之后,就可以初步了解STL(标准模板库)并进行学习了。当然,在这之前,有一个关键知识的学习,那就是模板。本篇文章博主就和大家一起探讨模板相关的基础知识。 一、问题引入–泛型编程当我们需要针对各种类型的数据实现交换函数时,实现的结果可能是这样的:void Swap(int& x, int& y){ int t = x; x...
- 前言之前在C语言当中,我们学习了动态内存管理的相关知识以及使用malloc/calloc/realloc/free函数实现堆区中动态内存的分配,而对于c++而言,我们有了新的方式来实现动态内存分配,它们就是new和delete。本篇文章我们就来详细探讨一下它们的使用方法以及c++/c语言实现动态内存管理的区别。 一、内存区域分布首先我们来看一段代码并尝试解决以下问题:1. GlobalVa... 前言之前在C语言当中,我们学习了动态内存管理的相关知识以及使用malloc/calloc/realloc/free函数实现堆区中动态内存的分配,而对于c++而言,我们有了新的方式来实现动态内存分配,它们就是new和delete。本篇文章我们就来详细探讨一下它们的使用方法以及c++/c语言实现动态内存管理的区别。 一、内存区域分布首先我们来看一段代码并尝试解决以下问题:1. GlobalVa...
- 前言之前我们学习了类中的一些默认成员函数:构造函数、析构函数、拷贝构造函数、赋值重载。今天,我们接着学习剩下的取地址运算符重载以及其他关于类和对象的知识。 一、取地址运算符重载取地址运算符重载分为两种:普通对象的取地址重载和const对象取地址重载。为了说明这两种取地址重载的区别,我们首先引入一个概念:const修饰成员函数。 1. const修饰成员函数在c++中,成员函数可以被cons... 前言之前我们学习了类中的一些默认成员函数:构造函数、析构函数、拷贝构造函数、赋值重载。今天,我们接着学习剩下的取地址运算符重载以及其他关于类和对象的知识。 一、取地址运算符重载取地址运算符重载分为两种:普通对象的取地址重载和const对象取地址重载。为了说明这两种取地址重载的区别,我们首先引入一个概念:const修饰成员函数。 1. const修饰成员函数在c++中,成员函数可以被cons...
- 前言之前我们在 类和对象(上)中了解了关于类的定义、对象的创建等一些基本知识:【c++】类和对象(上)(类的定义格式、访问限定符、类域、类的实例化、对象的内存大小、this指针)-CSDN博客今天,我们深入学习类和对象中默认成员函数相关的内容。 什么是默认成员函数所谓默认成员函数,就是在类当中我们没有显示实现,但是编译器自动生成的成员函数称之为默认成员函数。在c++11之前,默认成员函数一... 前言之前我们在 类和对象(上)中了解了关于类的定义、对象的创建等一些基本知识:【c++】类和对象(上)(类的定义格式、访问限定符、类域、类的实例化、对象的内存大小、this指针)-CSDN博客今天,我们深入学习类和对象中默认成员函数相关的内容。 什么是默认成员函数所谓默认成员函数,就是在类当中我们没有显示实现,但是编译器自动生成的成员函数称之为默认成员函数。在c++11之前,默认成员函数一...
- 前言c++是一种支持面向对象编程(OOP)的语言,而在面向对象编程当中,类和对象是核心概念,理解类和对象是学习面向对象编程的基石。面向对象编程是一种编程范式,它使用“类”来定义对象的属性和方法,完成对软件的设计。掌握类和对象的概念及其相互关系,对于深入理解并有效应用面向对象编程至关重要。 一、类的概念及定义类的本质是一种自定义类型,是定义对象模板的蓝图或者结构。它制定了对象可以包含的数据以... 前言c++是一种支持面向对象编程(OOP)的语言,而在面向对象编程当中,类和对象是核心概念,理解类和对象是学习面向对象编程的基石。面向对象编程是一种编程范式,它使用“类”来定义对象的属性和方法,完成对软件的设计。掌握类和对象的概念及其相互关系,对于深入理解并有效应用面向对象编程至关重要。 一、类的概念及定义类的本质是一种自定义类型,是定义对象模板的蓝图或者结构。它制定了对象可以包含的数据以...
- ——从咖啡杯到代码的抽象之旅2023 年我在指导大一学生编程时,发现 90%的困惑集中在"类到底是什么"。这个看似简单的问题,背后藏着编程思维从"过程"到"抽象"的跨越。本文将以咖啡杯为起点,带你理解面向对象的核心本质,而非停留在语法表层。 一、从现实到代码的抽象魔法清晨的咖啡馆里,服务员递来的陶瓷杯装着拿铁。这个杯子有颜色(白色)、容量(350ml)、温度(55℃),能执行"倒入液体"和... ——从咖啡杯到代码的抽象之旅2023 年我在指导大一学生编程时,发现 90%的困惑集中在"类到底是什么"。这个看似简单的问题,背后藏着编程思维从"过程"到"抽象"的跨越。本文将以咖啡杯为起点,带你理解面向对象的核心本质,而非停留在语法表层。 一、从现实到代码的抽象魔法清晨的咖啡馆里,服务员递来的陶瓷杯装着拿铁。这个杯子有颜色(白色)、容量(350ml)、温度(55℃),能执行"倒入液体"和...
- 你是否也经历过这些崩溃瞬间?看了三天教程,连i++和++i的区别都说不清面试时被追问"a==b和equals()的区别",大脑突然空白写出的代码总是莫名报NPE,却不知道问题出在哪个运算符🚀 这个系列就是为你打造的Java「速效救心丸」!我们承诺:✅ 每天1分钟:地铁通勤、午休间隙即可完成学习✅ 直击痛点:只讲高频考点和实际开发中的「坑位」✅ 拒绝臃肿:没有冗长概念堆砌,每篇都有可运行的代... 你是否也经历过这些崩溃瞬间?看了三天教程,连i++和++i的区别都说不清面试时被追问"a==b和equals()的区别",大脑突然空白写出的代码总是莫名报NPE,却不知道问题出在哪个运算符🚀 这个系列就是为你打造的Java「速效救心丸」!我们承诺:✅ 每天1分钟:地铁通勤、午休间隙即可完成学习✅ 直击痛点:只讲高频考点和实际开发中的「坑位」✅ 拒绝臃肿:没有冗长概念堆砌,每篇都有可运行的代...
- 1. 位移位运算符的基础 1.1 左移运算符(<<) 1.2 右移运算符(>>) 2. C++20 对位移位运算符的统一 2.1 移位数量超出操作数位宽 2.2 负数移位 3. 实践中的注意事项 4. 示例代码 5. 总结在 C++ 的发展历程中,位移位运算符(<< 和 >>)一直是语言的核心特性之一,广泛应用于性能优化、底层硬件操作和数据压缩等领域。然而,在 C++20 之前,这些运算符... 1. 位移位运算符的基础 1.1 左移运算符(<<) 1.2 右移运算符(>>) 2. C++20 对位移位运算符的统一 2.1 移位数量超出操作数位宽 2.2 负数移位 3. 实践中的注意事项 4. 示例代码 5. 总结在 C++ 的发展历程中,位移位运算符(<< 和 >>)一直是语言的核心特性之一,广泛应用于性能优化、底层硬件操作和数据压缩等领域。然而,在 C++20 之前,这些运算符...
- 在 RxJS 中,timeout 运算符是一个非常有用的工具,特别适用于那些希望对操作进行超时控制的情况。它允许我们在 Observable 链中设定一个时间限制,当时间超过这个限制而没有数据项发出时,抛出一个错误或进行其他处理。timeout 运算符主要在需要对连续操作进行时间约束的不限于以下几种场景中有所作为:网络请求的超时控制、操作的性能监测以及防止潜在的无限等待等。 Timeout ... 在 RxJS 中,timeout 运算符是一个非常有用的工具,特别适用于那些希望对操作进行超时控制的情况。它允许我们在 Observable 链中设定一个时间限制,当时间超过这个限制而没有数据项发出时,抛出一个错误或进行其他处理。timeout 运算符主要在需要对连续操作进行时间约束的不限于以下几种场景中有所作为:网络请求的超时控制、操作的性能监测以及防止潜在的无限等待等。 Timeout ...
- 在 TypeScript 中,??= 运算符被称为"空值合并赋值"运算符。如果左操作数为 null 或 undefined,则将其值设置为右操作数。这个运算符结合了 null 合并操作符 ?? 和赋值操作符 = 两者的功能。这里有一个简单的代码可以展示 ??= 的基本用法:let value: number | null = null;value ??= 10;console.log(val... 在 TypeScript 中,??= 运算符被称为"空值合并赋值"运算符。如果左操作数为 null 或 undefined,则将其值设置为右操作数。这个运算符结合了 null 合并操作符 ?? 和赋值操作符 = 两者的功能。这里有一个简单的代码可以展示 ??= 的基本用法:let value: number | null = null;value ??= 10;console.log(val...
- @[TOC](文章目录)---# 前言在Python中,面向对象编程(Object-Oriented Programming,简称OOP)是一种常用的编程范式。它通过将数据和操作封装在对象中,以模拟现实世界的实体和交互。---# 一、类和对象 在Python中,类是面向对象编程的基本构建块。类是一个模板,用于创建对象。对象是类的实例,它具有类定义的属性和方法。下面是一个简单的类的例子:```... @[TOC](文章目录)---# 前言在Python中,面向对象编程(Object-Oriented Programming,简称OOP)是一种常用的编程范式。它通过将数据和操作封装在对象中,以模拟现实世界的实体和交互。---# 一、类和对象 在Python中,类是面向对象编程的基本构建块。类是一个模板,用于创建对象。对象是类的实例,它具有类定义的属性和方法。下面是一个简单的类的例子:```...
- 一、三路比较运算符 <=> (一)背景与动机 (二)三路比较运算符的定义 (三)使用 <=> 的优势 (四)应用实例 示例 1:自定义类的比较逻辑 示例 2:复杂类的比较逻辑 二、operator==() = default (一)背景与动机 (二)operator==() = default 的定义 (三)使用 operator==() = default 的优势 (四)应用实例 示例 ... 一、三路比较运算符 <=> (一)背景与动机 (二)三路比较运算符的定义 (三)使用 <=> 的优势 (四)应用实例 示例 1:自定义类的比较逻辑 示例 2:复杂类的比较逻辑 二、operator==() = default (一)背景与动机 (二)operator==() = default 的定义 (三)使用 operator==() = default 的优势 (四)应用实例 示例 ...
- 本文将详细介绍如何利用Chatbox调用部署在 ModelArts Studio上的 DeepSeek 模型,构建文案编辑器。 本文将详细介绍如何利用Chatbox调用部署在 ModelArts Studio上的 DeepSeek 模型,构建文案编辑器。
上滑加载中
推荐直播
-
HDC深度解读系列 - Serverless与MCP融合创新,构建AI应用全新智能中枢2025/08/20 周三 16:30-18:00
张昆鹏 HCDG北京核心组代表
HDC2025期间,华为云展示了Serverless与MCP融合创新的解决方案,本期访谈直播,由华为云开发者专家(HCDE)兼华为云开发者社区组织HCDG北京核心组代表张鹏先生主持,华为云PaaS服务产品部 Serverless总监Ewen为大家深度解读华为云Serverless与MCP如何融合构建AI应用全新智能中枢
回顾中 -
关于RISC-V生态发展的思考2025/09/02 周二 17:00-18:00
中国科学院计算技术研究所副所长包云岗教授
中科院包云岗老师将在本次直播中,探讨处理器生态的关键要素及其联系,分享过去几年推动RISC-V生态建设实践过程中的经验与教训。
回顾中 -
一键搞定华为云万级资源,3步轻松管理企业成本2025/09/09 周二 15:00-16:00
阿言 华为云交易产品经理
本直播重点介绍如何一键续费万级资源,3步轻松管理成本,帮助提升日常管理效率!
回顾中
热门标签