类与对象
构造函数1.无参的构造函数与全缺省参数的构造函数都称为系统默认的构造函数2.系统默认的构造函数只能有一个3.一旦你写了显示的构造函数系统就不会提供默认的构造函数4.构造函数可以重载析构函数1.功能上与构造函数相反对象在销毁的时候会调用析构函数2.一个类有且只有一个析构函数若没有写则系统会自动生成默认的析构函数3.对象生命周期结束的时候C编译系统会自动调用析构函数4.与构造函数一样如果写了自己的析构函数的话就不会调用系统的默认析构5.系统会调用自定义类型本身的析构函数拷贝构造函数1.拷贝构造函数是构造函数的一个重载2.拷贝构造函数的参数里面有且必须只有一个引用传值的话会引发无穷递归3.系统同样也会提供一个默认的拷贝构造函数这个默认的函数的拷贝方式又被称为浅拷贝就是按照字节序的进行拷贝但是如果对象时指针的话就会出程序崩溃深拷贝恰恰可以解决这个问题#include iostream using namespace std; class Date { public: Date(int year 1900, int month 1, int day 1) { _year year; _month month; _day day; } /*Date(const Date d)如果没有定义拷贝构造函数系统就会调用默认的拷贝构造函数按内存存储、字节序进行拷贝也叫浅拷贝 { _year d._year; _month d._month; _day d._day; }*/ private: int _year; int _month; int _day; }; void TestDate() { Date d1;//调用无参构造函数 Date d2(2015, 1, 1);//调用带参数的构造函数 //注意如果通过无参构造函数创建对象时对象后面不用跟括号否则就成了函数声明 //一下代码的函数声明了d3函数该函数无参返回一个日期类型的对象 Date d3(); } int main2() { Date d1; Date d2(d1); return 0; }赋值运算符重载1.运算符的重载operator2.作为类成员的函数重载时其形参的数量比操作数目要少一个因为有默认形参this指针。3. .*、::、sizeof、?:、. 以上五个运算符没有重载4.运算符重载成全局的就需要共有成员。1.如果没有写的话编译器也会自己生成一个默认的赋值运算符重载。2.返回值为this指针#include iostream using namespace std; class Date { public: Date(int year 1900, int month 1, int day 1) { _year year; _month month; _day day; } Date(const Date d) { _year d._year; _month d._month; _day d._day; } Date operator(const Dated) { if (this ! d) { _year d._year; _month d._month; _day d._day; } } private: int _year; int _month; int _day; }; //bool operator(const Date d1, const Date d2) //{ // return d1._year d2._year // d1._month d2._month // d1._day d2._day; //} int main4() { Date d; return 0; }const修饰类的成员函数1.const修饰类的成员函数时实际修饰的是this指针表明该成员函数不能对类的任何成员进行修改2. const对象可以调用非const成员函数吗不可以非const对象可以调用const成员函数吗可以const成员函数内可以调用其它的非const成员函数吗不可以非const成员可以调用其他const成员函数吗可以#include iostream using namespace std; class Date { public: void Display() { cout Display() endl; cout year: _year endl; cout month: _month endl; cout day: _day endl; } void Display() const { cout Display() endl; cout year: _year endl; cout month: _month endl; cout day: _day endl; } private: int _year; int _month; int _day; }; int main5() { Date d1; d1.Display(); const Date d2; d2.Display(); return 0; }const取地址操作符重载类会自动提供两个取地址运算符重载一个是针对普通对象的,一个是针对const对象(6)。#include iostream using namespace std; class Date { public: Date* operator() { return this; } const Date* operator()const { return this; } private: int _year; int _month; int _day; }; int main() { return 0; }

相关新闻

LeetCode | 一只数据媛的刷题笔记(1)

LeetCode | 一只数据媛的刷题笔记(1)

LeetCode 27 Remove Element 移除元素 给定一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,返回移除后数组的新长度。 Given an array nums and a value val, remove all instances of that value in-place and return the new le…

2026/7/28 14:56:22 阅读更多 →
图遍历算法:从基础原理到AI应用实战

图遍历算法:从基础原理到AI应用实战

1. 图遍历算法基础与核心概念 图遍历算法是计算机科学中处理图结构数据的基础工具,也是AI领域众多应用的核心支撑技术。简单来说,图由顶点(Vertex)和边(Edge)组成,而遍历就是按照特定规则访问图…

2026/7/28 14:56:22 阅读更多 →
终极GPU显存稳定性测试指南:memtest_vulkan完整教程与故障排查

终极GPU显存稳定性测试指南:memtest_vulkan完整教程与故障排查

终极GPU显存稳定性测试指南:memtest_vulkan完整教程与故障排查 【免费下载链接】memtest_vulkan Vulkan compute tool for testing video memory stability 项目地址: https://gitcode.com/gh_mirrors/me/memtest_vulkan 在图形渲染、深度学习和科学计算等高…

2026/7/28 14:56:22 阅读更多 →

最新新闻

物联网设备安全芯片SE050与STM32F411RE的集成实践

物联网设备安全芯片SE050与STM32F411RE的集成实践

1. 为什么物联网设备需要专用安全芯片?在2023年某智能家居厂商的数据泄露事件中,攻击者通过破解设备固件签名密钥,远程控制了超过10万台智能门锁。这个案例暴露出传统MCU在安全防护上的致命短板——即使采用AES加密和TLS通信,密钥…

2026/7/28 15:01:24 阅读更多 →
NFS 配置 -- 客户端

NFS 配置 -- 客户端

查看服务端共享目录/文件:[rootstation bin]# showmount -e 172.16.30.254 Export list for 172.16.30.254: /mnt/private * /mnt/public * /rhome/guest2006 * /rhome/guest2005 * /rhome/guest2004 * /rhome/guest2003 * /rhome/guest2002 * /rhome/gues…

2026/7/28 15:01:24 阅读更多 →
远程协作AI工具选错的代价:常见误区与纠正方法

远程协作AI工具选错的代价:常见误区与纠正方法

远程协作AI工具选错的代价:常见误区与纠正方法 一、误区1:以为AI会议纪要可以替代人工记录——摘要的微妙遗漏 现象:团队引入AI会议纪要工具后,停止了人工记录。一周后发现两个关键设计决策被遗漏在AI摘要之外:一个关于…

2026/7/28 15:01:24 阅读更多 →
Next.js SSR开发中的常见性能陷阱与优化路径

Next.js SSR开发中的常见性能陷阱与优化路径

Next.js SSR开发中的常见性能陷阱与优化路径 一、陷阱1:同步阻塞SSR——一个慢请求拖垮整个页面 现象:服务端渲染页面async function Page()中按顺序await了4个数据请求。天气API(200ms)→日历API(150ms)→…

2026/7/28 15:01:24 阅读更多 →
C++变量详解:从基础概念到实战应用,掌握编程核心基石

C++变量详解:从基础概念到实战应用,掌握编程核心基石

1. 项目概述:初探C的基石——变量 如果你刚打开C这扇门,面对满屏的代码,可能会觉得有点眼花缭乱。别急,任何宏伟的建筑都是从一砖一瓦开始的,而在C的世界里,“变量”就是最基础、也最重要的那块砖。今天我们…

2026/7/28 15:01:24 阅读更多 →
css3边框和背景:

css3边框和背景:

1.边框图片(了解) border-image-source:url(1.png);指定边框图片地址,指定后,边框颜色就没了。 border-image-slice: 27 10;图片切割方式(可写1~4个值,不带单位,分别代表左上右下) border-image-width:100p…

2026/7/28 15:00:24 阅读更多 →

日新闻

告别臃肿!3步让你的暗影精灵笔记本重获新生

告别臃肿!3步让你的暗影精灵笔记本重获新生

告别臃肿!3步让你的暗影精灵笔记本重获新生 【免费下载链接】OmenSuperHub Control Omen laptop performance, fan speeds, and keyboard lighting, and unlock power limits. 项目地址: https://gitcode.com/gh_mirrors/om/OmenSuperHub 你是否也曾为官方Om…

2026/7/28 0:00:43 阅读更多 →
RAG必踩坑!财报法规检索不准?这款开源工具让答案浮出水面,准确率飙升98.7%!

RAG必踩坑!财报法规检索不准?这款开源工具让答案浮出水面,准确率飙升98.7%!

做 RAG 的人应该都踩过这个致命的坑:把几百页的财报、法规、技术手册扔给向量库,问一个具体问题,搜出来的全是沾边但没用的内容 —— 关键信息要么被硬切块拆碎了,要么藏在几十条结果的最下面。语义相似≠真正相关,这个…

2026/7/28 0:00:43 阅读更多 →
抖音视频文案提取工具全指南:免费2026版、手机App、在线工具一网打尽

抖音视频文案提取工具全指南:免费2026版、手机App、在线工具一网打尽

2026年做短视频运营,从抖音上扒文案早就不是偷偷抄笔记的事了。我刚开始做内容的时候,每天刷半小时抖音,手动把爆款视频的口播敲进备忘录,一条2分钟的视频得花十来分钟,碰到语速快的还要反复回听。后来试了一圈工具&am…

2026/7/28 0:00:43 阅读更多 →

周新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/7/28 12:04:22 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/7/28 8:29:16 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/7/28 5:03:42 阅读更多 →

月新闻