slice map go

Go 语言 new 和 make 关键字的区别

原文链接: Go 语言 new 和 make 关键字的区别 本篇文章来介绍一道非常常见的面试题,到底有多常见呢?可能很多面试的开场白就是由此开始的。那就是 new 和 make 这两个内置函数的区别。 其实这个问题本身并不复杂,简单来说就是,new 只分配内存,而 make 只能用于 slice、m ......
关键字 关键 语言 make new

DX Shadow Map

前言 ​ 目前我们以所学的渲染方式还不能表现出阴影,因此本篇将介绍阴影贴图原理、存在的问题、如何解决这些问题、实现例子 阴影贴图原理 思想:光源看不到而摄像机可以看到的地方 阴影贴图的主要步骤: 第一次渲染(PASS):将光源看作一个摄像机进行渲染,将光源空间的深度值写入称为阴影图的深度缓冲区,将该 ......
Shadow Map DX

Go03-函数+包+异常处理

Go03-函数+包+异常处理 1.函数的基本介绍 func main() { // 1 为完成某一功能的程序指令的集合,成为函数。 // 2 函数分为自定义函数和系统函数。 // 3 函数的定义,使用关键字func来定义一个函数。 /* func 函数名 (形参列表) (返回值列表) { 函数执行的 ......
函数 Go 03

Go02-运算符+流程控制

Go02-运算符+流程控制 1.运算符基本介绍 Go中的运算符分为:算术运算符、赋值运算符、比较运算符/关系运算符、逻辑运算符、位运算符和其他运算符。 Go中没有三元运算符?。 2.算术运算符 // 1 算术运算符。 // + 正号;- 负号; // + 加;- 减;* 乘;/ 除;% 取余; // ......
运算符 流程 Go 02

Go06-文件操作+单元测试+goroutine+channel+反射

Go06-文件操作+单元测试+goroutine+channel+反射 1.打开和关闭文件 func main() { // 1 打开文件。 // file可以称为file对象、file指针、file文件句柄。 file, err := os.Open("D:\\1.txt") if err != ......
goroutine 单元 channel 文件 Go

Go01-开发环境搭建+注释+基本数据类型+指针+命名规范

Go01-开发环境搭建+注释+基本数据类型+指针+命名规范 1.Go常用网站 https://www.topgoer.com/,Go学习网站,包含Go基础教程、beego、lris等Go开发常用框架。 Go开发软件下载:https://code.visualstudio.com/,VSCode;ht ......
指针 注释 类型 环境 数据

ES 字段Mapping的确认步聚

ES 字段Mapping的确认步聚 一.确定字段的数据类型 1.需要使用范围或数值排序的数值类型设置为数值 2.只进行term过滤的数值类型使用keyword 3.如果数值类型字段是可枚举的,使用keyword压缩率更高 二确定字段是否需要分词和高亮 1.不需要分词的字段,index的属性可以设置为 ......
字段 Mapping ES

【入门】Go语言运算符详解

一、算数运算符 + - * / % ++ -- 1.1 案例一:算数运算符练习 package main import "fmt" func main(){ // 加减乘除 fmt.Printf("1 + 1 = %v \n",1+1) fmt.Printf("3 - 1 = %v \n",3-1) ......
运算符 语言

Go日常

Test 1. 简介 Go 语言中自带有一个轻量级的测试框架 testing 和自带的 go test 命令来实现单元测试和性能测试。 2. 要求 文件名必须是`_test.go`结尾的,这样在执行`go test`的时候才会执行到相应的代码 你必须 import `testing`这个包 所有的测 ......

Go map 内存泄露

前言 在Go中, map这个结构使用的频率还是比较高的. 其实在所有的语言中, map使用的频率都是很高的. 之前在使用中, 一直都知道map的内存在元素删除的时候不会回收, 但一直没有仔细的研究为什么. 今天就来好好揣摩揣摩. func main() { m := make(map[int][12 ......
内存 map Go

【入门】Go语言常量详解

1、什么是常量? 程序运行期间不可以变的量 使用 const 定义 不能修改常量的值 不能打印常量的地址 常量在定义时候必须赋值 2、常量于变量的区别? 变量的值是可以变的,常量值不可以变 只是把变量的var改成了 const,常量在定义时候必须赋值。 3、定义常量 语法: const 常量名称 = ......
常量 语言

go学习 day223 家庭记账软件

###面向过程 package main import "fmt" func main() { // 声明一个变量,保存用户的输入 key := "" // 声明一个变量,查看是否退出程序 var status bool = true // 账户余额 var balance float64 = 10 ......
家庭 软件 day 223

feature map 的理解与处理

特征理解 不变性和等变性是图像特征表示的两个重要性质。 分类需要不变特征表示,因为它的目标是学习高级语义信息。 目标定位要求等变表示,因为它的目的是鉴别位置和尺度的变化。 由于目标检测包括目标识别和目标定位两个子任务,因此对检测器来说,同时学习不变性和等变性是至关重要的,通俗理解分 类只需要了解物体 ......
feature map

使用Map+函数式优化if else

使用Map+函数式接口优化if else 工作中遇到一个接口要返回不同数据表中的数据,首先想到的是使用if-else或者switch case: 例如: if(("1").equals(dataType)){ return "1"; }else if(("2").equals(dataType)){ ......
函数 else Map

feature map-opencv实现特征热力图可视化

上代码 绿色底纹 部分 代表 单个通道 热力图生成 代码; import cv2 import time import os import matplotlib.pyplot as plt import torch from torch import nn import torchvision.mo ......
map-opencv 特征 feature opencv map

feature map-CAM 和 利用pytorch-hook注册实现CAM可视化

什么是CAM CAM的全称是Class Activation Mapping或Class Activation Map,即类激活映射或类激活图。 论文《Learning Deep Features for Discriminative Localization》发现了CNN分类模型的一个有趣的现象: ......
pytorch-hook CAM feature map-CAM pytorch

【入门】Go语言变量详解

一、变量赋值的几种方式 1.1 声明单个变量 语法: var name type name:变量名称 type:变量类型 案例: package main func main() { var name string var age uint } 1.2 声明多个变量 语法: var name1,na ......
变量 语言

go gin web应用-通过中间件形式实现通用的参数检验

都知道 gin 在web开发方面应用广泛,但在参数校验上,之前写一堆 POST 接口的时候,每个接口的业务代码里都要去实现 validate 校验逻辑,感觉代码复用糟糕。 为解决这问题,想到通过 reflect 包是不是可以实现通用的校验处理呢。如果可以实现,业务逻辑就只需要专注与业务实现,进一步实 ......
中间件 形式 参数 gin web

go-pprof

非侵入式的分析工具。 主要分为几个阶段。 1、收集运行信息 引入包 import "runtime/pprof" var cpuprofile = flag.String("cpuprofile", "", "write cpu profile to file") pprof.StartCPUPro ......
go-pprof pprof go

前端RSA非对称加密Go解密

Person: JavaScript实现非对称加密 ChatGPT: JavaScript 可以使用公钥密码学算法来实现非对称加密。常用的公钥密码学算法包括 RSA 和 ECC。 下面是一个使用 RSA 算法实现非对称加密的示例: // 生成 RSA 密钥对 const { publicKey, p ......
前端 RSA

关于go-vendor和go-mod

go vendor在这个时间节点来讲的话,可能有些古典的气质了。 go vendor依旧在go mod的架构来讲,= go mod vendor 这个是当时依赖于goland这个ide的环境中,默认会生成对应当前项目的go path全局变量,此时用 go vendor有一个好处,相当于隔离出一个独立 ......
go-vendor go-mod vendor go mod

go的环形数组

package main import ( "errors" "fmt" "os" ) // 使用一个结构体管理环形队列 type CircleQueue struct { maxSize int // 4 array [5]int // 数组 head int //指向队列队首 0 tail in ......
环形 数组

go 笔记 init函数

来自:go init函数 1、golang里的main函数是程序的入口函数,olang还有另外一个特殊的函数init函数,先于main函数执行 init函数的主要作用: 初始化不能采用初始化表达式初始化的变量。 程序运行前的注册。 实现sync.Once功能。 其他 init函数的主要特点: ini ......
函数 笔记 init go

PaddleOCR之高性能Go语言实现OCR识别

最近为了让python语言能够直接调用PaddleOCR的C++的动态链接库,针对本人已经开源的PaddleOCR项目https://gitee.com/raoyutian/paddle-ocrsharp使用的PaddleOCR的C++动态库,进行了大量代码修改,修改后PaddleOCR,导出标准C ......
高性能 PaddleOCR 语言 OCR

Go Xorm简单使用

官网相关文档 https://xorm.io/zh/docs/chapter-01/1.engine/ https://gitea.com/xorm/xorm/src/branch/master/README_CN.md xorm 是一个简单而强大的Go语言ORM库. 通过它可以使数据库操作非常简便 ......
Xorm Go

【责任链设计模式详解】C/Java/JS/Go/Python/TS不同语言实现

简介 责任链模式(Chain of Responsibility Pattern)是一种行为型设计模式,也叫职责链模式、命令链模式。这种模式为请求创建了一个接收者对象的链,允许你将请求沿着处理者链进行发送,每个处理者均可对请求进行处理,或将其传递给链上的下个处理者。 当程序需要使用不同方式来处理多种 ......
设计模式 语言 模式 责任 Python

golang pprof 监控系列(1) —— go trace 统计原理与使用

golang pprof 监控系列(1) —— go trace 统计原理与使用 服务监控系列文章 服务监控系列视频 关于go tool trace的使用,网上有相当多的资料,但拿我之前初学golang的经验来讲,很多资料都没有把go tool trace中的相关指标究竟是统计的哪些方法,统计了哪段 ......
原理 golang pprof trace go

go

1、深拷贝(Deep Copy) 拷贝的是数据本身,创造一个样的新对象,新创建的对象与原对象不共享内存,新创建的对象在内存中开辟一个新的内存地址,新对象值修改时不会影响原对象值。既然内存地址不同,释放内存地址时,可分别释放。 值类型的数据,默认全部都是深复制,Array、Int、String、Str ......
go

GO实现Redis:GO实现内存数据库(3)

实现Redis的database层(核心层:处理命令并返回) https://github.com/csgopher/go-redis datastruct/dict/dict.go type Consumer func(key string, val interface{}) bool type ......
内存 数据库 数据 Redis

json go

package mainimport ( "encoding/json" "fmt")type b struct { Params []interface{} `json:"params,omitempty"`}func main() { v := []interface{}(nil) v = ap ......
json go