logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

设计模式之责任链模式(C语言)

介绍:​责任链模式是一种行为模式,它可以允许你将请求沿着处理者链进行发送,收到请求以后, 每个处理者均可对请求进行处理, 或将其传递给链上的下个处理者;作用:将请求按照链的方式一一传递类比:​公司申请报销,首先要leader审批通过,然后是HR,再然后是财务,最后是老板,一级一级的将请求传递;示例:#include <stdio.h>#include <assert.h>#

#c语言#责任链模式#设计模式
设计模式之状态模式(C语言)

介绍:​状态模式是一种行为模式,它与有限状态机的概念紧密相关;其主要思想是程序在任意时刻仅可处于几种有限的状态中。在任何一个特定状态中,程序的行为都不相同,且可瞬间从一个状态切换到另一个状态。不过,根据当前状态,程序可能会切换到另外一种状态,也可能会保持当前状态不变。这些数量有限且预先定义的状态切换规则被称为转移。作用:将业务模型抽象成一个有限状态机,减少大量的switch-case和if-els

#状态模式#c语言#设计模式
设计模式总汇(C语言)

设计模式总汇,C语言版本

#c语言#设计模式
设计模式之原型模式(C语言)

介绍:​原型模式是一种创建型设计模式,使你可以通过复制原型来创建一个一模一样的新的对象,无需考虑创建过程,数据类型等内容;作用:创建一个与原型一模一样的对象;解决问题:即使原型的状态有所改变,也可以创建出与其当前状态一致的对象省去了创建对象的复杂操作,不必关注创建对象的具体过程类比:​老师打印试卷,拿着原版试卷,可以复制出任意数量的试卷,原版试卷既为原型;代码示例:#include <std

#原型模式#c语言#设计模式
编译错误:In function `_sbrk_r‘:sbrkr.c:(.text._sbrk_r+0xc): undefined reference to `_sbrk‘

问题描述:GCC编译过程中报错:In function `_sbrk_r': sbrkr.c:(.text._sbrk_r+0xc): undefined reference to `_sbrk'原因分析:底层没有实现某些库函数如:sprintf,snprintf,vsprintf等。可尝试将部分代码注释以确认到底是哪个函数未实现解决方案:添加相应的lib库...

#c语言#开发语言#单片机
设计模式之观察者模式(C语言)

介绍:观察者模式是一种行为设计模式, 允许你定义一种订阅机制, 可在对象事件发生时通知多个 “观察” 该对象的其他对象。问题:​假如顾客对某个特定的产品非常感兴趣 , 而该产品很快将会在商店里出售。顾客可以每天来商店看看产品是否到货。但如果商品尚未到货时,顾客就会空手而归。另一方面,每次新产品到货时,商店可以向顾客发送邮件。这样,顾客就无需反复前往商店了,但这样同时也可能会惹恼对新产品没有兴趣的其

#观察者模式#c语言#设计模式
侵入式链表

普通链表:我们经常使用的普通链表是每个节点的next指针指向下一个节点的首地址:具体代码实现如下:struct link{int data;struct link* next;}普通链表的缺点:一条链表上的所有节点的数据类型需要完全一致对某条链表的操作如插入,删除等只能对这种类型的链表进行操作,如果链表的类型换了,就要重新再封装出一套一样的操作,泛化能力差;侵入式链表:侵入式链表的节点的链接成员指

#链表#数据结构#c语言
设计模式之工厂模式(C语言)

介绍:​工厂模式是一种创建型设计模式;作用:​隐蔽具体的生产逻辑,根据不同的要求生产出不同的产品,就像switch-case一样;类比:​一个衣服工厂可以根据不同的诉求生产出不同面料的衣服;代码示例:typedef enum{COTTON,LEATHER,FABRIC_MAX,}typedef struct _Clothing{int fabric; /*面料*/void (*generate_c

#c语言#开发语言#设计模式
git clone指定分支代码

全克隆:git clone <url>只克隆单一分支:git clone -b <branch> --single--branch <url>注意:git clone -b <branch> <url>这条克隆的指令与全克隆的作用一致。

#c语言#git#git
VScode SSH远程连接失败

问题描述:VScode重启更新后,SSH远程连接失败,反复尝试都不起作用。具体现象如下(因为解决以后log记录就没了,所以借了下别人的log):[08:48:13.513] Server installation process already in progress - waiting and retrying[08:48:14.517] Running script with connecti

#vscode#ssh
    共 11 条
  • 1
  • 2
  • 请选择