
编程语言
文章平均质量分 85
编程语言 C/C++/Java/Python/Golang
卖行家的小报纸
摸鱼选手
展开
-
gin-contrib/session源码浅析
初始代码:redis.NewStore用于配置redis连接,最后一个参数作为加密密钥对sessionid进行加密处理。首先是sessions.Sessions方法返回一个httphandler中间件,所有的请求共享相同的store,即共享相同的底层存储。接下来通过session.Get(“count”)获取session服务端信息中count键对应的值,Get方法如下:Session方法定义如下:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aKgpVSfv原创 2021-06-04 10:30:45 · 903 阅读 · 0 评论 -
go context源码解析
文章目录Context是什么?Context基本使用方法创建特殊用途的Context方法WithValueWithCancelWithDeadline总结面试问题和回答总结参考内容Context是什么?Go 1.7引入context,中文译作“上下文”,准确地说它是goroutine地上下文,包含goroutine地运行状态、环境、现场等信息。context主要用来在goroutine之间传递上下文信息,包括:取消信号、超时时间、截止时间、k-v键值对等。Context基本使用方法包context原创 2021-04-05 18:37:05 · 286 阅读 · 0 评论 -
Go类型嵌套时容易犯的错误
记录一个在go编程容易犯的错误。下面是用数组实现栈的代码:这部分代码是实现了一个数组,支持常见的插入元素、删除元素等基本操作。// 实现支持泛型的数组package arrayimport ( "bytes" "fmt" "reflect")type MyArray struct { arr []interface{} size int}// 创建一个新的数组, 切片长度设置为capacity, 相当于定长数组func NewArray(capacity int) *My原创 2021-02-03 19:04:46 · 230 阅读 · 0 评论 -
Go初出茅庐(二)
文章目录接口(interface)接口定义接口实例值接收者和指针接收者实现接口值接收者实现接口指针接收者实现接口接口值接口与类型的关系接口嵌套空接口空接口作为函数的参数空接口作为`map`的值类型断言并发接口(interface)接口是一种类型。接口定义了一个对象的行为规范,只定义规范不实现,由具体的对象来实现规范的细节。为什么要引入接口:比如三角形、四边形、圆形都能计算周长和面积,如何把它们当成“图形”来处理?比如学生、老师都会吃饭睡觉学习,如何把他们当成“人”来处理?Go语言为了解决类原创 2020-12-17 09:57:17 · 223 阅读 · 0 评论 -
Go初出茅庐(一)
文章目录Go语言初探变量、常量和字符串变量字符串流程控制if条件语句切片匿名函数和闭包结构体方法和接收者结构体的继承结构体与jsonGo语言初探Go语言的发展目标及特性:类型安全和内存安全的编程语言,Go语言使用静态类型,所以是类型安全的,且作为强类型语言,隐式的类型转换是不被允许的对网络通信、并发和并行编程的极佳支持,从而更好地利用大量的分布式和多核的计算机(这个特性是Go语言最强有力的部分,不仅支持了日益重要的多核与多处理器计算机,也弥补了现存编程语言在这方面所存在的不足)编译和链接到机器代原创 2020-12-17 09:48:37 · 399 阅读 · 0 评论 -
集合框架Review
准备刷题之前,复习巩固一下Java集合框架的内容。菜鸡如我,天天在看语法。。这样不得行哈哈目标了解Java集合框架体系结构;会使用ArrayList存取数据,会使用LinkedList存取数据(重点);了解ArrayList与LinkedList的区别;掌握Set存储数据的特点;会通过迭代器和增强型for遍历Set;会使用Map存取数据,掌握Map常用方法,掌握遍历Map;掌握泛型的好处及使用;掌握Collections的使用;备注:集合框架体系结构归纳为图,总结哪些是接口,哪些.原创 2020-12-14 23:41:01 · 314 阅读 · 1 评论 -
一小时搞定Git命令与Gayhub使用
参考廖雪峰大神的博客:)创建版本库初始化一个Git仓库,使用git init命令。添加文件到仓库,分两步:使用命令git add <file>,注意,可反复多次使用,添加多个文件;使用命令git commit -m <message>要随时掌握工作区的状态,使用git status命令。如果git status显示有文件被修改过,用git diff可以查看修改内容。版本回退HEAD指向的版本是当前版本,当修改HEAD指向时会更新工作区文件。因此Git允许我们.原创 2020-11-07 00:19:12 · 1238 阅读 · 0 评论 -
Go基础之切片
Talk is cheap, show me the code:)代码:package mainimport ( "fmt")// func main() {// var x = [3]int{1, 2, 3}// fmt.Println(arraySum(x))// }// func arraySum(x [3]int) int{// sum := 0// for i := 0; i < len(x); i++ {// sum += x[i]// .原创 2020-09-27 20:36:45 · 141 阅读 · 0 评论 -
Java基础知识点回顾
毕设需要,迅速回顾一遍Java程序设计的基础知识。Java语言规范、API、JDK、IDE的含义:Java语言规范是Java语法和语义技术性定义,API是应用程序接口(Java预定义类和接口),Java开发工具包(JDK)包含软件库、编译器、解释器以及其他工具,集成开发环境(IDE)提供编辑、编译、调试和在线帮助功能。Java平台版本:Java SE:允许开发和部署在桌面、服务器和嵌入...原创 2019-04-17 23:53:32 · 19164 阅读 · 0 评论 -
C++ Primer阅读笔记1
第七章 类1、类的基本思想是数据抽象和封装。数据抽象是一种依赖于接口和实现分离的编程(以及设计)技术。类的接口包括用户所能执行的操作;类的实现则包括类的数据成员、负责接口实现的函数体以及定义类所需要的各种私有函数。封装实现了类的接口和实现的分离。封装后的类隐藏了它的实现细节,也就是说,类的用户只能使用接口而无法访问实现部分。2、引入thisstd::string isbn(...原创 2019-07-26 09:45:58 · 221 阅读 · 0 评论 -
Linux下的多线程编程
Linux下的多线程编程线程是操作系统能够进行调度运算的最小单位,它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程可以并发多个线程,每条线程执行不同的任务。线程的创建#include <pthread.h>int pthread_create(pthread_t *pthread, const pthread_attr_t *a...原创 2019-03-06 22:45:45 · 227 阅读 · 0 评论 -
C语言如何计算算法运行时间
C/C++中的计时函数是clock(),而与其相关的数据类型是clock_t。在MSDN中,查得对clock函数定义如下: clock_t clock( void ); 这个函数返回从“开启这个程序进程”到“程序中调用clock()函数”时之间的CPU时钟计时单元(clock tick)数,在MSDN中称之为挂钟时间(wal-clock)。其中clock_t是用来保存时间的数据...转载 2019-01-30 13:02:03 · 22270 阅读 · 0 评论 -
C语言编写简易病毒
本次实验设计的是一个基于C语言的恶意代码,其执行流程如下: 1、 在病毒第一次执行时,即检测到注册表的任务管理器没有被禁用,则病毒依次执行以下功能: 创建开机启动项,在系统目录路径下面复制文件,将其作为自启动路径; 禁用任务管理器; 禁用注册表编辑器; 联网获取图片并修改桌面背景(重启生效); 修改注册表屏蔽用户键盘输入为1(重启生效); 删除驱动器盘符,使桌面以及开始菜单快捷方式失原创 2017-09-01 18:00:03 · 73967 阅读 · 71 评论