自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 VS中测试函数或过程的耗时

【代码】VS中测试函数或过程的耗时。

2023-07-03 17:40:52 436 1

原创 C++ JSON和string字符串互转

C++ JSON和string字符串互转

2022-07-13 22:20:02 4546

原创 【C++设计模式】观察者模式

背景观察者模式定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。当一个对象发生了变化,关注它的对象就会得到通知;这种交互也称为发布-订阅(publish-subscribe)。目标是通知的发布者,它发出通知时并不需要知道谁是它的观察者。观察者模式又称订阅-发布模式。#include <iostream>#include <list>using namespace std;// 抽象观察者class Observer

2022-02-08 17:51:19 466

原创 【C++设计模式】策略模式

背景策略模式(Strategy模式)是行为模式之一,它对一系列的算法加以封装,为所有算法定义一个抽象的算法接口,并通过继承该抽象算法接口对所有的算法加以封装和实现,具体的算法(策略)选择交由客户端决定。Strategy模式主要用来平滑地处理算法的切换 。策略模式的UML类图如下,主要的类有三个:1.抽象策略类Strategy,定义所有支持的算法的公共接口;2.具体策略类StrategyA,StrategyB,封装具体的算法;3.上下文Constext类,根据策略类的配置,通过多态实现不同算法的调用

2022-02-08 15:28:29 1236

原创 【C++设计模式】三种常规的工厂模式

一、背景工厂模式提供创建对象的最佳模式,在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。具体到C++项目中,可以使用C++多态特性将存在继承关系的类通过工厂类创建对应的子类对象,在项目复杂的情况下,可以便于子类对象的创建。工厂模式主要分为三种,简单工厂模式、工厂方法模式和抽象工厂模式。1.简单工厂模式简单工厂模式的UML类图如下,图中主要有三个类,抽象产品类(Phone)、具体产品类(iPhone,Huawei)和工厂类(PhoneFactory)...

2022-02-08 13:03:53 810 1

原创 【C++面向对象核心】构造函数、析构函数及其功能

一、构造函数构造函数在创建对象时调用,它与类同名且不返回任何值,是类成员变量初始化的理想场所。下面记录几个要点:1.构造函数可以重载代码如下(示例):class Human {private: int age; string name;public: // 默认构造函数 Human() { age = 0; } // 重载构造函数 Human(string humanName) { name = humanName; age = 0; }};2.没有默认构造函数

2022-02-07 15:38:27 371

原创 【材料力学回顾】弯曲正应力公式

2022-01-08 18:46:36 3816

原创 C++读写文本

C++读写文本软件开发中经常会有遇到用于交换数据的文本的读写,常常我们会引用json库进行json文件格式的读写,本文记录一下常用的普通文本的读写.1.读取空格分隔的文本test.txt 本文内数据用空格分隔:/* * text.txt: * 11 22 33 * 44 55 66*/ string fileName = "E:\\test.txt"; std::ifstream fin(fileName.c_str(), std::ios::in); char line[512

2022-01-06 21:33:52 1054

原创 C/C++随机数生成

#include <cstdlib>#include <ctime>//srand需要放在循环外面srand((int)time(NULL));//rand函数需要放在循环里面确保每次都会生成不同的随机数int start = -1;int end = 1;float offset = start + (end - start) * (rand() / (RAND_MAX + 1.0));...

2021-06-28 11:17:14 64

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除