常量 语言学习 变量 语言

[转]go语言函数装饰器,接口类型变量反射赋值

转:原文:https://juejin.cn/post/7115343063119036453 函数装饰 做基础组件经常需要用到函数修饰,例如我需要对所有被装饰方法里打印start、end。 已知函数签名的装饰 我们经常用的函数装饰器一般都是知道被装饰的方法的签名,然后返回一个同签名的方法。最简单的 ......
变量 函数 接口 语言 类型

2023-2024-1 20231301 《计算机基础与程序设计》第三周学习总结

2023-2024-1 20231301 《计算机基础与程序设计》第三周学习总结 作业信息 作业 链接 作业课程 <班级>(2023-2024-1-计算机基础与程序设计) 作业要求 <作业>(2023-2024-1计算机基础与程序设计第三周学习总结) 作业目标 <《计算机基础与程序设计》预习第二、三 ......

博学谷学习记录 自我总结 用心分享 | Spring源码刨析

别再盲目的说spring有三级缓存了,两个缓存只是启动时为了解决循环依赖,spring启动后只有一个缓存有用 一、什么是循环依赖 循环依赖指的就是循环引用,就是两个或多个 bean 相互之间的持有对方,比如 CircleA 引用 CircleB , CircleB 引用 CircleC, Circl ......
自我总结 源码 Spring

博学谷学习记录 自我总结 用心分享 | Tomcat源码刨析

Tomcat系统架构设计 1.前言 很多人谈到架构感觉是一个非常高大尚的东西,觉得自己目前不太可能接触到或者没有实力接触和学习它。这其实是一个非常错误的认识,事实上我们作为开发人员每天都在和架构打交道。比如当你接到一个功能模块的需求时,你首先要做的就是分析和设计,例如技术选型、功能拆分、设计合理的开 ......
自我总结 源码 Tomcat

Java学习笔记二

Java学习笔记二 面向对象(Object Oriented) 属性(成员变量)跟随对象放在堆里面,局部变量(如 p1)放在栈里面。只有成员变量的前面能添加权限修饰符,且成员变量自带默认值。 在一个类中,一个方法可以调用这个类中的其余方法(包括自身,即递归)以及成员变量,不能在方法中再定义方法。 方 ......
笔记 Java

数据结构——左偏树/可并堆学习笔记

引入 作为树形数据结构的一员——堆,对于取极值拥有着优秀的复杂度,但是,合并两个堆却成为了一个问题。除了朴素算法外,还有什么算法可以合并两个堆呢? 正文 那么,可并堆是个啥呢?简单来说,它是一个支持合并操作的二叉堆(好像是废话)。 首先,简单介绍一下二叉堆的性质,学过的读者可自行跳过。 二叉堆是一棵 ......
数据结构 结构 笔记 数据

网络流 - 最大流 学习心得

一篇写的很好的博客 那篇博客讲得很清楚,就不再赘述了。在这里贴出一些我犯过的 bug : /* bug:1.是q.front()而不是q.back() 2.q需要pop() 3.bfs的条件不是w!=0而是w>0 4.flow不会在同一层被更新,因此不能给flow赋值 5.一次bfs可以dinic多 ......
心得 网络

一个需要感性理解的树上算法 学习心得

题目描述 你现在有一颗 \(n\) 个点的树和 \(m\) 条由 \(x_i\) 到 \(y_i\) ( \(1 \le x_i\ ,\ y_i \le n\) ) 的简单可重复路径。求有多少种方案选路径,使路径集的大小为 \(k\) ,且所有路径至少有一个公共点。对 \(10^9+7\) 取模。 ......
算法 感性 心得

博学谷学习记录 自我总结 用心分享 | MyBatis源码刨析

Mybatis底层源码分析1.概要介绍 MyBatis 是一款优秀的持久层框架,也是当前最流行的java持久层框架之一,它内部封装了jdbc,使开发者只需要关注sql语句本身,而不需要花费精力去处理加载驱动、创建连接、创建statement等繁杂的过程。采用ORM思想解决了实体和数据库映射的问题,对 ......
自我总结 源码 MyBatis

Catalan 数 学习心得

引 - \(C_n^m\) 的由来 一条直线上 \(m\) 个元素彼此相同,另外 \(n−m\) 个元素彼此相同,那么此时它们在直线上有 \(n!m!(n−m)!\) 种排列方式 而在直线上将这 \(n\) 个元素进行排列的方式,又等价于在 \(n\) 个位置中取 \(m\) 个位置放入其中一种元素 ......
心得 Catalan

树链剖分 学习心得

Bug 都写在代码开头了,就不复述了。 还有一个智障的错误是注释调试代码的时候把同一行的正式代码也给注释掉了( 写得非常精彩。 /* bug:1.rev、id要分清! 2.mod()函数的情况不能写一半就跑路! 3.别忘了先给tree build()一下! 4.出界条件认真想一遍再写! 5.还有出界 ......
心得

割边+割点 学习心得

先背诵 tarjan 板子 #include<bits/stdc++.h> using namespace std; #define N 10005 #define M 100005 int tot,first[N],nxt[M],to[M]; void add(int x,int y){ nxt[ ......
心得

数位 dp 学习心得

感觉非常牛逼。最牛逼的是很多情况下要去掉前导零。 去掉前导零的方法通常是先忽略前导零的约束,最后再容斥掉有多少0。 Luogu P2602 数字计数 来自【详细解释】数字计数 ZJOJ p2602 一道练习数位DP的好题 - moye到碗里来 的博客 - 洛谷博客 (luogu.com.cn) 那么 ......
数位 心得 dp

密码协议学习笔记总目录

参考教材:密码协议基础第二版-邱卫东等 自制扫描版下载地址:密码协议基础-邱卫东-扫描.pdf - 蓝奏云 (lanzoum.com) (如果网页链接打不开,可能是网络运营商劫持了蓝奏云的域名,可自行搜索教程,用备用域名或更改host等方式访问) 第一章:引论 密码协议学习笔记(1):密码协议引论与 ......
总目 密码 笔记

灯光师学习基础篇

一. 灯光流程及操作步骤 1. 接电 这一步是所有的基础(灯光一般接240安,只有面光的时候可以接120安的电) 大电一般为3000瓦,切割灯要自己连一个电源线,led灯十个可以连一个电源线,光束灯则为五个连一个电源线。 十三芯可以帮助你连接多个电源,大场合一般12条左右足矣,具体问题具体讨论。 2 ......
灯光师 灯光 基础

c语言代码练习(无符号整数)29

#define _CRT_SECURE_NO_WARNINGS 1 #include <stdio.h> #include <windows.h> int main() { unsigned int i; for (i = 9; i >=0; i--) { printf("%u\n", i); Sl ......
整数 符号 语言 代码 29

markdown学习笔记

markdown学习 标题 heading level 1 # 空格 heading level 2 ## 空格 heading level 3 ### 空格 heading level 4 #### 空格 heading level 5 ##### 空格 heading level 6 ##### ......
markdown 笔记

java学习日记day02

java学习日记day02 冯诺伊曼体系 ) cmd指令 ......
日记 java day 02

Vue学习笔记(十):全局事件总线

之前博客中介绍了prop和调用事件的方式在父-子组件之间进行数据,这种方式在只有一层嵌套层时可以使用,但是路过存在多层嵌套,多层多个“兄弟”组件之间传递数据,就非常麻烦。对此,vue中提供了一种全局事件总线机制,数据传递是通过一个空的Vue实例作为中央事件总线,通过它来触发事件和监听事件,可以实现几... ......
总线 全局 事件 笔记 Vue

python学习笔记3 遍历目录, 列出文件名

import os def listDir(curPath, pixLen): list = [] # print("当前路径:" + curPath) files = os.listdir(curPath) for path in files: fullPath = os.path.join(cu ......
文件名 文件 笔记 目录 python

C语言 - 使用_beginthreadex()创建线程

经过了解才知道,C++03之前,用的创建线程都是CreateThread 与 _beginthreadex。使用这个两个函数进行创建线程。然后C++11之后,就出现了新的线程函数thread,当然,这个创建线程比较方便! 经过两三天的纠结,最终决定深入研究_beginthreadex此方式创建线程, ......
线程 beginthreadex 语言

c语言代码练习(字节序列)-28

需求:写一段代码高数我们当前机 #define _CRT_SECURE_NO_WARNINGS 1 #include <stdio.h> int sheck_sys() { int a = 1; return *(char*)&a; } int main() { int ret = sheck_sy ......
序列 字节 语言 代码 28

C语言 - 错误处理

C 错误处理 C 语言不提供对错误处理的直接支持,但是作为一种系统编程语言,它以返回值的形式允许您访问底层数据。在发生错误时,大多数的 C 或 UNIX 函数调用返回 1 或 NULL,同时会设置一个错误代码 errno,该错误代码是全局变量,表示在函数调用期间发生了错误。您可以在 errno.h ......
错误 语言

博学谷学习记录 自我总结 用心分享 | RocketMQ刨析

RocketMQ是一个分布式开放消息中间件,底层基于队列模型来实现消息收发功能。RocketMQ集群中包含4个模块:Namesrv, Broker, Producer, Consumer。 主要功能 削峰填谷(主要解决瞬时写压力大于应用服务能力导致消息丢失、系统奔溃等问题) 系统解耦(解决不同重要程 ......
自我总结 RocketMQ

C语言 - 内联函数

在C语言中,内联函数(Inline Function)是一种用于优化代码执行效率的机制。内联函数在编译时将函数的代码直接插入到调用它的地方,而不是通过函数调用的方式执行,从而减少了函数调用的开销,提高了代码的执行速度。 C语言的内联函数使用 inline 关键字来声明。将函数声明为内联函数只是给编译 ......
函数 语言

博学谷学习记录 自我总结 用心分享 | Kafka刨析

基本概念 Kafka 体系架构 Kafka 体系架构包括若干 Producer、若干 Broker、若干 Consumer,以及一个 ZooKeeper 集群。 在 Kafka 中还有两个特别重要的概念—主题(Topic)与分区(Partition)。 Kafka 中的消息以主题为单位进行归类,生产 ......
自我总结 Kafka

win32汇编-标号、变量和数据结构

标号、变量和数据结构 当程序中要跳转到另一位置时,需要有一个标识来指示新的位置,这就是标号,通过在目标地址的前面放上一个标号,可以在指令中使用标号来代替直接使用地址。使用变量是任何编程语言都要遇到的工作, Win 32汇编也不例外, 在MASM中使用变量也有需要注意的几个问题,错误地使用变量定义或用 ......
标号 数据结构 变量 结构 数据

Go语言中的面向对象

面向对象的概念 洗衣服过程剖析: 给洗衣机里加脏衣服和洗衣粉。 启动洗衣机。 洗衣机自动注水,然后滚动。 脏衣服从黑颜色变成白颜色。 洗衣机自动停止。 用面向过程的思想实现代码。 //准备洗衣服 //输入参数: //powder 洗衣机里放多少洗衣粉 //closes 洗衣机里放多少衣服 //cle ......
对象 语言

GO语言中的I/O操作

格式化输出 输出格式 输出内容 %t 单词 true 或 false %b 表示为二进制 %d 表示为十进制 %e (=%.6e)有 6 位小数部分的科学计数法,如 -1234.456e+78 %f (=%.6f)有 6 位小数部分,如 123.456123 %g 根据实际情况采用 %e 或 %f ......
语言

博学谷学习记录 自我总结 用心分享 | RabbitMQ刨析

一、什么是消息队列 消息指的是两个应用间传递的数据。数据的类型有很多种形式,可能只包含文本字符串,也可能包含嵌入对象。 “消息队列(Message Queue)”是在消息的传输过程中保存消息的容器。在消息队列中,通常有生产者和消费者两个角色。生产者只负责发送数据到消息队列,谁从消息队列中取出数据处理 ......
自我总结 RabbitMQ