C++
文章平均质量分 75
ygbd_26
这个作者很懒,什么都没留下…
展开
-
Qt学习笔记(5) — Qt 类库【C++】
Qt 类库学习原创 2023-03-21 10:21:14 · 1552 阅读 · 0 评论 -
Qt学习笔记 【C++】(4)
Qt学习原创 2023-03-20 15:21:13 · 528 阅读 · 0 评论 -
Qt学习笔记 day_03
Qt学习笔记原创 2023-02-22 20:02:48 · 702 阅读 · 0 评论 -
Qt学习笔记 day_02
Qt学习笔记原创 2023-02-16 20:50:54 · 349 阅读 · 0 评论 -
Qt学习笔记 day_01
Qt开发学习笔记原创 2023-02-15 20:42:32 · 410 阅读 · 1 评论 -
C++ 移动语义
C++ 移动语义特性原创 2022-08-19 17:18:47 · 1381 阅读 · 0 评论 -
二叉排序树(二叉搜索树)【C++】
二叉搜索树原创 2022-06-04 16:29:01 · 493 阅读 · 0 评论 -
人不能在一棵【树】上吊着---C++
二叉树原创 2022-06-03 20:43:12 · 85 阅读 · 0 评论 -
STL标准模板库—迭代器部分【C++】
STL迭代器1、概念迭代器,旨在提供一种方法,使得依次访问某容器内的各个元素,而又不需要暴露出该容器的内部表达方式。2、迭代器的几个型别值类型差值类型引用类型指针类型迭代器类型(包括单向迭代器、随即迭代器、双向迭代器)– [1] input_iterator;//只读迭代器– [2] output_interator;//只写迭代器– [3] Forward_iterator;//正向迭代器– [4] Bidirectional_iterator;//双向迭代器– [5] Ran原创 2022-05-27 11:41:46 · 132 阅读 · 0 评论 -
lambda表达式【C++】
lambda表达式lambda表达式是C++11最重要也是最常用的一个特性。lambda来源于函数式编程的概念。优点:声明式编程风格:就地匿名定义目标函数或函数对象,不需要额外写一个命名函数或函数对象。以更直接的方式去写程序,有好的可读性和可维护性。简洁:不需要额外再写一个函数或函数对象,避免了代码膨胀和功能分散,让开发者更加集中精力在手边的问题,同时也获取了更高的生产率。定义:[capture] (params) opt →ret {body;} ;例子:int main()原创 2022-05-26 16:05:25 · 208 阅读 · 1 评论 -
STL 标准模板库—容器部分【C++】
STL标准模板库包含内容:容器类:vector、list、deque、set、map等迭代器:“泛型指针”,每个容器都有自己的迭代器,【vector和deque的迭代器是随机迭代器,而list、set、map的迭代器是双向迭代器】。算法仿函数适配器(配接器)配置器:负责空间配置与管理1、容器1.string容器文件件的区别:(C++) 、 <string.h>(C语言)、 (C的字符串函数库)一些方法:capacity()不等同于size()可通过[ ]原创 2022-05-24 18:13:33 · 211 阅读 · 0 评论 -
智能指针 【C++】
智能指针【C++】RALL机制:资源获取即初始化,使用==局部对象==来管理资源的技术(这里的资源主要指操作系统中有限的:比如内存、网络套接字、互斥量、文件句柄等,局部对象是指存储在栈的对象,其生理周期有操作系统来管理)1、使用裸指针存在的问题在使用时,我们无法判断它指向的是一个对象还是一组对象。int *tmp;//野指针int *op=NULL;//空指针//从堆区new出来的指针之后释放了,叫失效指针(或悬空指针)无法判断一个使用完后的指针是否应该被销毁,因为无法判断指针此时还原创 2022-05-20 21:33:53 · 554 阅读 · 0 评论 -
浅学一下【设计模式】之 [ 抽象工厂模式 ]
浅学一下【设计模式】第三个练习:抽象工厂模式其实,工厂模式我们也能看到会有这样的一个问题,如果我们有两个具体产品类,那我们就有两个生产具体产品类的工厂类,那当我们有很多具体产品类时,就会增加系统中工厂类的个数。这个时候,可以考虑有一个总工厂类,去生产属于“一个产品族”的产品,这个就是抽象工厂模式的基本思想。练习:某公司欲开发一套界面皮肤库,可以对桌面软件进行界面美化,为了保护版权,该皮肤库源代码不打算公开。用户在使用时通过菜单来选择皮肤,不同的皮肤将提供视觉效果不同的按钮、文本框、组合框等界面元素,原创 2022-05-17 18:27:52 · 148 阅读 · 0 评论 -
菱形继承(C++)
菱形继承菱形继承:指有一个基类被两个不同的类所继承,且存在一个类继承于这两个类而形成的一种菱形关系,故称菱形继承。如下图所示:如上图,Person类由Student类和Staff类继承,且有一个Stu_Staf类继承这两个类。代码结构会是这样的:class Person{public: string name; string id; int age; string sex; Person(string na,string idd,int n,string se):name(na),id原创 2022-05-15 15:23:50 · 1775 阅读 · 0 评论 -
继承与多态 【C++复习】
继承与多态---记录基本概念与编程要点一些概念:1、继承:在基类的基础上加以扩展,增加功能,这样产生的类,叫派生类2、多态:发生在不同层次的类中,以及同一类中,同名函数之间的关系问题编译时期的多态(早绑定):指在编译时期就确定了函数的执行时机、调用关系,如函数的重载运行时期的多态(晚绑定):是以虚函数+公有继承为基础,在程序运行时才能确定的调用关系3、struct和class的区别:struct默认public,struct继承时,缺省情况下是公有继承class默认private,原创 2022-05-14 18:03:48 · 276 阅读 · 0 评论 -
【算法学习】---(二)动态规划
本节算法:动态规划动态规划:与分治法类似,也是将大规模的问题分解为若干个子问题,先求解子问题,再从这些子问题的解得到原问题的解。但是动态规划解决的这些问题,他们经分解后的子问题往往是互相不独立的。这时候,再用分治法解决就会耗费大量的时间。且在这过程中,会有一些子问题被我们进行重复求解,很不划算。因此,出现动态规划思想:如果将已经解决的子问题的解保存到一张表中,不管该子问题以后是否被用到,只要他被计算过,就将其结果填入表中。动态规划算法步骤:找出最优子结构性质,并刻画其结构特征递归的定义最优值以原创 2022-05-14 12:24:47 · 292 阅读 · 0 评论 -
【算法学习】---(一)分治策略
本节算法:分治法分治策略:是将规模较大的问题分割成为规模较小的子问题。==“问题不变,规模减小”==这是分治策略的核心思想。分治策略可以解决的问题具有一下特点:该问题缩小到一定的规模很容易求解该问题可以分解为若干个规模较小的子问题使用较小规模的子问题,可以合并成该问题原规模的解该问题分解出的子问题之间是相互独立的举个简单的例子,现在有50000项任务需要一个项目组去完成,似乎听起来很难很快完成,但是,当这个项目组中有200个成员时,安排第1个成员去完成前250个任务,第2个成员完成接下来原创 2022-05-13 18:09:38 · 1138 阅读 · 0 评论 -
浅学一下【设计模式】之 [ 工厂模式 ]
浅学一下【设计模式】第二个练习:工厂模式简单工厂模式虽然简单,但存在一个很严重的问题。当系统中需要引入新产品时,由于静态工厂方法通过所传入参数的不同来创建不同的产品,这必定要修改工厂类的源代码,将违背“开闭原则”,如何实现增加新产品而不影响已有代码?工厂方法模式应运而生,本文将介绍第二种工厂模式——工厂方法模式。总结提示:这里对文章进行总结:例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。...原创 2022-05-13 12:30:40 · 132 阅读 · 0 评论 -
浅学一下【设计模式】之 [ 简单工厂模式 ]
浅学一下【设计模式】第一个练习:简单工厂模式简单工厂模式定义一个工厂类,它可以根据参数的不同返回不同类的实例,被创建的实例通常都具有共同的父类。因为在简单工厂模式中用于创建实例的方法是静态(static)方法,因此简单工厂模式又被称为静态工厂方法(Static Factory Method)模式,它属于类创建型模式。翻译一下,就是简单工厂模式就是你要的是A,你就传入一个“指示”参数,然后我就给你创建一个你要的A对象,当然你不需要关心我如何创建。在这样的设计模式之中,存在这样的几个类:Prod原创 2022-05-12 22:19:15 · 113 阅读 · 0 评论 -
关于const、指针和引用【C++复习】
指针+const+引用 的用法1、const和指针的关系const是修饰变量的,通常修饰的是它的右部,比如const int p=&a;const修饰p,说明p的指向可以发生改变,而不能通过*p去改变指向的变量的值,const必须初始化。const引用可以引用变量也可以引用常量,也可以引用字面常量,而普通引用则不能引用字面常量。而指针,就是存放地址的变量,可以理解为就是地址,如int *p=a;则在p的内存空间中就存放的是a的内存空间的地址。1.指向常量的指针(指针指向的对象是con原创 2022-01-15 20:45:58 · 202 阅读 · 0 评论 -
C与C++的区别有哪些?【C++复习】
C与C++的区别有哪些?C是面向过程的,C++是万物皆是对象,那么实质上这两者之间有什么区别呢?这边文章帮助你记忆一下。主要区别:C与C++的区别:1、输入与输出2、引用3、inline函数4、函数默认值5、函数重载6、模板函数7、new/delete8、namespace1、输入与输出一个例子来说明://首先对于标准库的引用://c中#include<stdio.h>//C++#include<iostream>using names原创 2022-01-15 14:14:32 · 665 阅读 · 0 评论 -
Visual C++6.0 一些编译链接报错解决
【01】VC++编写图形化界面链接时出现“LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main”的解决方案在我使用VC++编写一个图形化显示界面程序时,出现了下面的错误: 检查了我的代码,都没有问题,然后就搜了一下,说的很多的基本没啥用,就下面的这个简单的修改就行了按照下面的操作修改配置就OK了在设置的连接选项中,将下图的subsystem:console改为subsystem:windows就行了原创 2021-11-22 08:55:45 · 1161 阅读 · 1 评论 -
C++编程 C和C++的区别【笔记】
学习目标:C与C++的区别:1、默认值参数2、内联函数3、函数的重载学习内容:1、默认值参数C语言中不存在给函数设默认参数。C++中:- 函数参数默认值优先级低于传参- 函数参数默认值可以在定义处、声明处使用- 一个函数参数的默认值只能设定一次- 函数不同参数的默认值可以在不同声明中进行赋值,但是必须从右向左- 函数参数的默认值是在编译阶段生成push传参指令的,所以函数默认值参数作用域仅在本文件- 函数参数的默认值有就近性2、内联函数宏函数:直接在预处理原创 2021-05-14 00:39:40 · 297 阅读 · 1 评论 -
C++编程 函数调用过程【笔记】
学习目标:提示:这里可以添加学习目标例如:一周掌握 Java 入门知识学习内容:提示:这里可以添加要学的内容例如:1、 搭建 Java 开发环境2、 掌握 Java 基本语法3、 掌握条件语句4、 掌握循环语句学习时间:提示:这里可以添加计划学习的时间例如:1、 周一至周五晚上 7 点—晚上9点2、 周六上午 9 点-上午 11 点3、 周日下午 3 点-下午 6 点学习产出:提示:这里统计学习计划的总量例如:1、 技术笔记 2 遍2、CSDN 技术博客 3 篇原创 2021-05-14 00:24:04 · 352 阅读 · 0 评论