对C++学习的反思(2023年5月23日)

2023-10-28

2023年5月23日,周二下午:


存在的问题:

至今仍然没用过C++的类来写项目,也不知道如何用C++的类来写项目,依然在用面向过程那套来写项目。不知道什么是面向对象编程,不知道为什么会有面向对象编程,不知道面向对象编程和面向过程相比有什么优势。

那该怎么办:

  • 看看用C++的类来写的大型或者中型开源项目。因为有时候,小型的项目只用到了一个类,既看不出,也无法深入理解面向对象程序设计。所以,看用C++的类来写的大型或者中型开源项目是非常有必要的。此外,我发现看大型或者中型的开源项目,没有讲解它们源码的书籍或者资料是不行的。所以在选择大型或者中型的开源项目时,还要考虑到有没有书籍或者资料来讲解它们的源码。我目前选择了levelDB 1.3版本来看,因为我感觉讲解它的源码的资料还挺多的。此外,chatGPT也可以很好的辅助自己阅读levelDB 1.3版本的源代码。我之前问了chatGPT这样几个问题:“怎么看leveldb 1.3版本的源码,从哪个文件入手?”、“levelDB 1.3版本的主类在哪个文件?”
  • 看看用C++的类来写的开源小项目
  • 用C++的类来写一些小项目
  • 用Java来写一些小项目,以锻炼自己的面向对象编程
  • 看看用Java写的开源小项目
  • 看关于面向对象方面的书籍、资料、视频和文章
  • 思考什么是面向对象编程,怎么写面向对象程序,写面向对象编程的博客
  • 开一个面向对象编程的专栏

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

对C++学习的反思(2023年5月23日) 的相关文章

  • 通过 SOAP 的 Gmt php 或 UTC C# 等效项

    is C DateTime UtcNow和 PHPdate c 是等价的 我怀疑 因为当我肥皂时 我得到了 C
  • 从另一个 FORM 中取回隐藏的 FORM

    我有两种形式Form1 and Form2 我正在打开Form2 from Form1 on button Click Form2 obj2 new Form2 this Visible false obj2 Show 然后我想回来Form
  • OpenGL缓冲区更新[重复]

    这个问题在这里已经有答案了 目前我正在编写一个模拟水的程序 以下是我所做的步骤 创建水面 平面 创建VAO 创建顶点缓冲区对象 在其中存储法线和顶点 将指针绑定到此 VBO 创建索引缓冲区对象 然后我使用 glDrawElements 渲染
  • MSMQ接收和删除

    是否有任何选项可以在读取消息后将其从 MSMQ 中删除 比如 接收 删除可以作为原子操作运行吗 听起来您想查看下一条消息 然后在处理完成后接收它 Message message Queue Peek Queue ReceiveById me
  • make_shared<>() 中的 WKWYL 优化是否会给某些多线程应用程序带来惩罚?

    前几天我偶然看到这个非常有趣的演示 http channel9 msdn com Events GoingNative GoingNative 2012 STL11 Magic Secrets作者 Stephan T Lavavej 其中提
  • 虚拟并行端口模拟器

    在我的计算机网络课程中 我们应该通过使用本机寄存器 例如使用 outportb 等命令 来学习并行端口编程 我没有并行端口 因为我住在 2011 年 但想练习这些程序 我使用 dosbox 安装了旧的 Turboc 3 IDE 有没有一个程
  • Nhibernate:连接表并从其他表获取单列

    我有以下表格 create table Users Id uniqueidentifier primary key InfoId uniqueidentifier not null unique Password nvarchar 255
  • PrivateObject 找不到属性

    我的结构基本上如下所示 abstract class A protected string Identificator get set private void DoSomething DoSomethingSpecific protect
  • 判断串口是普通COM还是SPP

    我正在寻找一种方法来确定 COM 是标准 COM 还是 SPP COM 也称为 COM 设备的电缆替换蓝牙适配器 我有一个可以在 USB COM gt USB 和蓝牙下工作的设备 并且蓝牙接口可以与 SPP 一起工作 我目前正在使用Syst
  • 提升mapped_file_source、对齐方式和页面大小

    我正在尝试在性能很重要的上下文中解析一些大小高达几百兆字节的文本文件 因此我使用 boostmapped file source 解析器期望源以空字节终止 因此我想检查文件大小是否是页面大小的精确倍数 如果是 则使用较慢的非内存映射方法 我
  • 为什么 std::function 不是有效的模板参数,而函数指针却是?

    我已经定义了名为的类模板CallBackAtInit其唯一目的是在初始化时调用函数 构造函数 该函数在模板参数中指定 问题是模板不接受std function作为参数 但它们接受函数指针 为什么 这是我的代码 include
  • “没有合适的默认构造函数可用”——为什么会调用默认构造函数?

    我已经查看了与此相关的其他一些问题 但我不明白为什么在我的情况下甚至应该调用默认构造函数 我可以只提供一个默认构造函数 但我想了解它为什么这样做以及它会产生什么影响 error C2512 CubeGeometry no appropria
  • 如何在新窗口中打开图像或pdf文件?

    我有一个 gridview 它包含文件名和文件路径 图像和 pdf 格式文件 其中我使用了模板字段 在该字段下放置了 1 个图像按钮 单击该图像按钮 即 查看 按钮 时 我想在新窗口中打开所选文件 这是我的代码 protected void
  • 从点云检测平面集

    我有一组点云 我想测试3D房间中是否有角落 所以我想讨论一下我的方法 以及在速度方面是否有更好的方法 因为我想在手机上测试它 我将尝试使用霍夫变换来检测线 然后我将尝试查看是否有三条线相交 并且它们也形成了两个相交的平面 如果点云数据来自深
  • 将 2 个字节转换为整数

    我收到一个 2 个字节的端口号 最低有效字节在前 我想将其转换为整数 以便我可以使用它 我做了这个 char buf 2 Where the received bytes are char port 2 port 0 buf 1 port
  • 在 C++ 代码 gdb 中回溯指针

    我在运行 C 应用程序时遇到段错误 在 gdb 中 它显示我的一个指针位置已损坏 但我在应用程序期间创建了 10 万个这样的对象指针 我怎样才能看到导致崩溃的一个 我可以在 bt 命令中执行任何操作来查看该指针的生命周期吗 谢谢 鲁奇 据我
  • 测验;这个编译了吗?如果是的话它会返回什么(我知道答案)

    我最近发现这个错字 if name find string npos 显然开发者的意思是输入 if name find string npos 但令我惊讶的是发现错误甚至编译 Wall Werror 没有尝试过 pedantic 那么 咖啡
  • 将日期时间显示为 MM/dd/yyyy HH:mm 格式 C#

    在数据库中 日期时间以 MM dd yyyy HH mm ss 格式存储 但是 我想以 MM dd yyyy HH mm 格式显示日期时间 我通过使用 String Format 进行了尝试 txtCampaignStartDate Tex
  • 如何调用与现有方法同名的扩展方法? [复制]

    这个问题在这里已经有答案了 我有这样的代码 public class TestA public string ColA get set public string ColB get set public string ColC get se
  • 解释这段代码的工作原理;子进程如何返回值以及在哪里返回值?

    我不明白子进程如何返回该值以及返回给谁 输出为 6 7 问题来源 http www cs utexas edu mwalfish classes s11 cs372h hw sol1 html http www cs utexas edu

随机推荐

  • 【Kubernetes】Kubernetes的yaml文件中command的使用

    command就是将命令在创建的容器中执行 有这些命令去完成一些工作 command用法和dockerfile中的cmd差不多 command可以单独写 也可以分成command和参数args 可以参考之前的CMD去理解 例如下面的写法都可
  • 超分辨率重建——(一)何为超分和分类

    图像超分辨重建 图像超分辨率 SR 是计算机视觉中提高图像和视频分辨率的一类重要技术 图像超分辨率重建 Super resolution Reconstruction SR 是由一张或多张低分辨率图像得到高分辨率图像的过程 存在问题 传统图
  • 刷脸支付营销广告一站式便捷的应用

    刷脸支付收银系统的应用让消费者自助购物 正规购物过程更加便捷了 同时对于商户来说 还可以通过收银系统的会员管理 会员管理 营销 会员加广告以及服务 为商户提供了收银 店铺管理 营销加广告等一站式便捷的闭环应用 刷脸支付 智慧医疗 智慧校园
  • ETL与ELT理解

    ETL ETL Extract Transform Load 用来描述将数据从来源端经过抽取 Extract 转换 Transform 加载 Load 至目的端的过程 ETL模式适用于小数据量集 如果在转换过程中需要处理的数据量达到千万上亿
  • yum使用报错:Cannot find a valid baseurl for repo: base/$releasever/x86_64

    转自 https www cnblogs com qa freeroad p 13888980 html 背景 项目有几台机器 centos7 时间不准 为了让时间能够定时同步 需要安装ntpdate 然而 我在使用yum安装ntpdate
  • Call From hadoop102/192.168.10.102 to hadoop102:8020 failed on connection exception: java.net.Connec

    错误 which no hbase in opt modules jdk1 8 0 212 bin opt modules jdk1 8 0 212 bin usr local bin usr bin usr local sbin usr
  • STM32 电机教程 24 - ST MCLIB实战之无感变绝对式位置传感器

    前言 上一节给大讲演示了如何用ST MotorControl Workbench创建基本STM32F103C8T6芯片的FOC工程并根据实际电路成功创建了工程 但是实际电路使用的是绝对式磁编码器作为电机位置及速度检测传感器 而ST Moto
  • 学习笔记 JavaScript ES6 箭头函数

    学习内容 this指向定义时所在的对象 而不是调用时所在的对象 不可以当作构造函数 不可以使用arguments对象 1 this指向定义时所在的对象 而不是调用时所在的对象 先来回顾一下ES5当中如何定义函数 function sum x
  • SQL Server是什么?SQL Server详细介绍

    一 SQL Server数据库简介 SQL Server数据库是Microsoft开发设计的一个关系数据库智能管理系统 RDBMS 现在是全世界主流数据库之一 SQL Server数据库具备方便使用 可伸缩性好 相关软件集成程度高等优势 能
  • centos7修改服务器密码忘记,Centos7忘记root密码怎么修改

    Centos7忘记root密码怎么修改 一 reboot重启机器 当出现引导界面时 按e进入内核编辑界面 二 往下翻 到LANG zh CN UTF 8后面添加 rd break 别忘了空格 三 修改完成后 按下Ctrl X组合键来运行这个
  • gcc,pkg-config,libyaml and etc..

    order of lib imports in gcc lib are importants the order of lib imports in gcc lib are importants I used to have this co
  • Java并发编程实战——你真的了解final吗?

    文章目录 final的简介 平时使用的final final修饰变量 final修饰方法 final修饰类 多线程中你真的了解final吗 final域基本数据类型的重排序规则 写final域的重排序规则 读final域的重排序规则 fin
  • AV1:为互联网提供开放、免费的视频编解码工具

    从学术研究到进入工业界 Zoe Liu一直在算法和音视频领域 目前在谷歌编解码团队为编解码器AV1做开发支持 Zoe畅谈了评定编解码器的标准 以及AV1的最新进度 本文是 下一代编码器 系列采访之一 欢迎自荐或推荐技术人加入 下一代编码器
  • 每日一题【day2】

    题目链接 思路 对于两门课之间的约束关系 很容易联想到图 我们可以将课抽象为节点 将约束抽象为一条有向边 可以用有向图的相关算法解决问题 拓扑排序正好可以解决这一问题 算法 拓扑排序 一个合法的选课序列就是一个拓扑序 拓扑序是指一个满足有向
  • 【交点】直线与多边形相交显示

    every blog every motto You can do more than you think https blog csdn net weixin 39190382 type blog 0 前言 python 求直线与多边形交
  • nio和bio的原理_NIO、BIO、AIO的区别,及NIO的应用和框架选型

    AIO BIO NIO的区别 IO模型主要分类 同步 synchronous IO和异步 asynchronous IO 阻塞 blocking IO和非阻塞 non blocking IO 同步阻塞 blocking IO 简称BIO 同
  • 算法库-二分查找操作

    文章目录 lower bound 返回指向第一个不小于给定值的元素的迭代器 gt x upper bound 返回指向第一个大于给定值的元素的迭代器 gt x binary search 确定元素是否存在于某范围中 equal range
  • PLC的优势与特点

    1 高可靠性 所有I O接口电路均采用光电隔离 将工业现场外部电路与plc内部电路电气隔离 各输入采用R C滤波器 其滤波时间常数一般为10 20 ms 各模块采用屏蔽措施 防止辐射干扰 采用性能优异的开关电源 严格筛选采用的设备 良好的自
  • java 中this的条件_在Java中,this用来代表( )的对象。_学小易找答案...

    填空题 Java语言中常用异常类IOException是用来处理 异常的类 单选题 下面关于继承的说法中正确的是 简答题 根据微课视频 制作函数 制作函数微课 wmv 填空题 Java发生异常状况的程序代码放在 语句块中 将要处理异常状况的
  • 对C++学习的反思(2023年5月23日)

    2023年5月23日 周二下午 存在的问题 至今仍然没用过C 的类来写项目 也不知道如何用C 的类来写项目 依然在用面向过程那套来写项目 不知道什么是面向对象编程 不知道为什么会有面向对象编程 不知道面向对象编程和面向过程相比有什么优势 那