自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(68)
  • 资源 (1)
  • 问答 (6)
  • 收藏
  • 关注

原创 GCC/Make/CMake 工具链

为什么要用make?直接使用shell脚本不能完成编译吗?

2023-11-22 17:02:14 358

原创 《Effective C++》第四章:接口的设计

C++中有大量的接口,比如函数接口、类接口、模板接口。如何设计清晰易用、不易出错的接口非常重要。

2023-02-09 23:48:20 815 1

原创 《Effective C++》 第三章: 资源管理

auto_ptr 和tr1::shared_ptr功能比较有局限性,很多时候我们需要创建自己的资源管理类。以互斥锁为例。如果不借助类,互斥锁应当这样实现:lock→临界代码区→unlock如果借助资源管理类的实现如下所示:public :Mutex m;//定义互斥量 . . . {//加锁 . . . //临界区 }

2023-01-31 22:25:40 1363 1

原创 《Effective C++》 第二章: 构造、析构以及赋值函数

本文为《Effective C++》第三章的简要概括。目录的序号对应着原书中的item编号。本章节包括item 5 ~item 12。

2023-01-30 20:24:39 595

原创 《Effective C++》 第一章:适应C++的思考方式

c语言中#define非常好用。但是在C++中几乎没有任何场景应该使用define。首先,define有诸多问题。很难debug。define定义的量不会出现在变量表中,debugger无法对其进行追踪。有时会增加目标代码的量。尤其是定义长字符串,有可能替换之后程序代码中字面量特别多。无法对宏定义进行封装、继承。(没办法控制宏的命名空间、访问权限,没办法继承)对于宏函数,结果更是难以预料。比如:(a) :(b))(a) :(b))(a) :(b))(a) :(b))f。

2023-01-28 14:51:51 847 3

转载 c++ extern的用法【转载】

现代编译器一般采用按文件编译的方式,因此在编译时,各个文件中定义的全局变量是互相透明的,也就是说,在编译时,全局变量的可见域限制在文件内部。下面举一个简单的例子。这两个文件极为简单,在A.cpp中我们定义了一个全局变量i,在B中我们也定义了一个全局变量i。这就是说,在编译阶段,各个文件中定义的全局变量相互是透明的,编译A时觉察不到B中也定义了i,同样,编译B时觉察不到A中也定义了i。

2023-01-25 16:32:20 699

原创 #ifdef和#if defined的差别【转载】

ifdef 和 #if defined 效果是一样的,但是当你要判断复杂的条件时,只能用 #if defined。#ifdef 和 #if defined 的区别在于,后者可以组成复杂的预编译条件,比如。注意两者都有个define的作用,区别在于使用方式上。而#ifdef 就不能用上面的用法,也就是说,当你要判断单个宏是否定义时。只能在两者中选择是否有定义。可以在多个中选择是否有定义.

2023-01-17 19:10:24 952 1

原创 51单片机的特殊功能寄存器(SFR)

阅读前提醒: 文中提到的8051指的是8051微控制器,即51单片机在上一篇文章中,提到8051微控制器的RAM被划分为通用寄存器、按位寻址寄存器、寄存器组、以及特殊功能寄存器。这里讲一下特殊功能寄存器(SFR)。8051的特殊功能寄存器用于控制各种外围硬件设备,包括定时器、串行端口、I/O端口。也可以用于更改和获取微处理器的运行模式。

2023-01-14 18:29:22 8701 1

原创 51单片机存储结构

之前概要介绍了8151微控制器的结构(也就是51单片机)。相比微处理器,微控制器的区别之一是在一个芯片上有程序存储器(RAM)和数据存储器(RAM)。存储区是微控制器非常重要的内容。本文就介绍一下8051的存储结构。包括存储器的组织、处理器对存储的访问、微控制器访问外部存储的方法。在介绍存储结构之前,先介绍一下计算机结构。

2023-01-13 23:36:09 2723

原创 51单片机特性概览

微控制器包括: CPU+其他组件(可能包括RAM,ROM,I/O端口,定时器、计数器、通信端口),而微处理器只包含CPU。一开始只有微处理器,但是微处理器需要额外配备很多组件才能运行,成本比较高。所以微控制器应运而生。

2023-01-13 15:48:13 653

翻译 理解VAE

从数据降维讲到VAE

2022-11-09 16:12:35 1421 1

转载 VAE 代码实现

本文附带jupyter notebook文件已上传到我的CSDN资源中。

2022-11-09 15:53:04 2327 2

原创 极大似然法

介绍一下极大似然法,原文作者小米粥,本文是对其文章的概要总结。

2022-11-03 23:02:15 1260

原创 生成模型(1)无监督生成模型

介绍无监督生成模型,原作者小米粥,本文是原博文的内容摘要。

2022-11-03 16:47:40 849

原创 多线程: fork的调用次数问题

答案是32,即25可以理解为:每执行一次fork,进程就分裂成几乎完全一样的两个。进行了五次分裂。

2022-10-25 22:36:02 262

原创 Makefile介绍

简而言之, Makefile是一个自动化编译软件的工具。以redis为例:它可以在主目录通过make命令安装。make会自动执行Makefile文件中的命令Makefile文件中的内容如下:可以看到需要打开src文件夹执行MAKE命令而src文件夹下也有一个Makefile文件,make会执行src/Makefile的内容。

2022-10-12 19:04:17 364

原创 gcc动态库的制作和使用

动态库的制作和使用

2022-10-06 19:01:19 265

原创 C/C++ 静态库制作和使用

目标: 将已有代码封装成库并使用2. 把程序做成obj文件(未经过链接的二进制文件)得到add.o, sub.o文件注意:libxxx.a, 其中xxx是库的名字比如libhello.a, 库的名字是hello当前目录结构如下:其中libcalc.a是需要使用的库,head.h是它对应的头文件输入命令:参数说明:-I: 指定搜索头文件的路径-L: 指定搜索库文件的路径-l: 库名,注意文件名libcalc.a对应的库名是calc这样

2022-10-05 21:35:58 897

原创 gcc的简单工作流程

预处理、编译、汇编、链接

2022-10-04 22:18:07 620

原创 Git Pro精要(一) 基本概念

下面是git的一些基本概念。

2022-09-29 19:50:54 487

原创 YOLOv5 最详细的源码逐行解读(二: 网络结构)

Yolov5中,网络模型的配置放在yaml文件中,而yolov5s放置在文件中其中一层网络的参数是用列表实现的,比如四个参数的含义分别是-1输入来自上一层,如果是正数i则代表第i层1使用一个网络模块Conv该层的网络层名字是ConvConv层的四个参数yaml文件可以被yaml库解析为字典对象。...

2022-07-21 11:45:42 5789 1

原创 YOLOv5 最详细的源码逐行解读(一)

逐行吃透YOLOv5源码

2022-07-17 14:12:04 19891 2

原创 YOLOv1: 从0开始 (一) 数据集加载

本文使用平台: kaggle使用数据集: car object detection一.加载数据集1.查看数据集结构感觉testing_images和sample_submission.csv没什么卵用.import numpy as npimport pandas as pdimport osdf = pd.read_csv("/kaggle/input/car-object-detection/data/train_solution_bounding_boxes (1).csv")df

2022-05-22 20:01:25 743

原创 步骤超详细: 在Kaggle上做手写数字识别

本实验完整代码在kaggle: LeNet with pytorch 所使用数据集:MNIST Original | Kaggle数据集:MNIST Original | Kaggle一. 加载并封装数据集解析mat格式数据import numpy as npfrom scipy.io import loadmat #加载mat格式数据from torch.utils.data import Dataset, DataLoaderimport matplotlib.pyplot as

2022-05-16 16:02:27 1181

原创 jupyter notebook 404 用户权限配置问题

环境: Linux我在/root/hello/目录下执行jupyter-notebook, 结果浏览器登录发现: 404原因是: 当前用户没有访问root目录的权限.给当前用户赋予一下执行权限就好了.sudo chmod a+x /rootsudo chmod a+x /root/hello

2022-05-04 21:35:01 1393 1

原创 TensorBoard Segmentation fault socket

TensorBoard发生段错误, 更改端口后问题解决.具体表现是: 运行时不报错,一旦尝试用浏览器查看时就报错并且发现出错的地方涉及到socket,所以考虑更换端口.tensorboard --logdir runs --port=6007这样访问6007端口,而不是6006.问题解决但究竟是为什么报错的呢?不是很理解....

2022-04-30 16:08:22 289

原创 Filezilla 读取目录列表失败

Status: Connecting to 121.4.142.72:21... Status: Connection established, waiting for welcome message... Status: Plain FTP is insecure. Please switch to FTP over TLS. Status: Logged in Status: Retrieving directory listing... Command: PWD Response: 25.

2022-01-12 20:38:13 2903

原创 db2 查看属性的数据类型 小数位 null约束

describe table 表名效果: 数据类型 列 列名 模式 数据类型名称 长 小数位 NULL ------------------------------- --------- ------------------- ---------- ----- ------ EMPNO

2021-12-25 23:27:05 477 2

原创 python 使用迭代来创建集合

!我是不是最后一个知道这种用法的-_-|| ?In [1]: arr = [1,2,3,4,5]In [2]: {i: i*2 for i in arr}Out[2]: {1: 2, 2: 4, 3: 6, 4: 8, 5: 10}

2021-12-16 16:10:10 462

原创 python numpy pandas四舍五入不正确的问题

用pandas处理数据偶然发现s = pd.Series([-1, 1.2345, 100, -50])s.round(3)结果是0 -1.0001 1.2342 100.0003 -50.000dtype: float64发现1.2345四舍五入后的结果是1.234.理论上应该是1.235才对后来测试发现,1.23451四舍五入后就是1.235猜测是浮点数精度问题.python并不能精确地知道这一位是4还是5详细解释见这篇文章:如何使用Pytho

2021-12-15 10:52:40 1465

原创 循环冗余校验 使用及记忆方法

CRC(循环冗余校验)入正题之前,先确定自己知道校验的基本原则.发送端任务:根据源数据,生成校验码,并将源数据和校验码一同发送接收端任务: 根据源数据和校验码,按照一定的规则来校验是否发生了错误.设定:数据分为三部分:D: 需要发送的数据(Data)R: 校验码(CRC中的校验码是运算的余数,即Remainder)G: 生成多项式(Generator)这里需要注意: 和其他校验方式类似,发送方和接收方传输的数据只有D和R, 而生成多项式(G)则是根据链路层协议确定的.将生成多项式转为

2021-11-25 14:25:11 427

翻译 问题记录:既然MAC能唯一标识一台设备,那为什么我们还需要IP呢?

以下内容节选自Quora,回答者Pankaj Kedia问题既然每个设备的MAC地址是唯一的,那为什么我们还需要引入IP来唯一地标识网络中的一个系统呢?回答者的答案让我用类比的方法来简单地回答这个问题:假设你的名字‘A’,显然世界上其他人可能和你重名,所以这不能唯一地辨识你的身份。现在我们把你父亲的名字也加上(假设你父亲的名字是B),那么可以用B-A来标识你。但显然,这也未必能唯一地标识你的身份。但是,我们再加上你爷爷的名字、你爷爷的父亲的名字——‘A’, ‘B.A’, ‘C.B.A’, ‘D.

2021-11-24 15:45:49 250

原创 计算机网络-自顶向下方法(7th) 第五章 Problems 英文题目1-15+中文答案

P1.Looking at Figure 5.3 , enumerate the paths from y to u that do not contain any loops.(y,x,u)(y,w,x,u)(y,z,w,x,u)(y,x,v,u)(y,w,v,u)(y,x,w,v,u)(y,z,w,v,u)(y,w,u)(y,z,w,u)(y,x,w,u)(y,x,v,w,u)(不太知道怎么列举,我是根据后缀列举的,比如前面的分别是以x,u/v,u/w,u…)P2.Rep

2021-11-22 19:23:11 12488 4

原创 计算机网络-自顶向下方法 7th 5.4 BGP协议总结

不得不说国内陈鸣的译本把这部分翻译得像坨*****这篇是我根据英文原书的理解。阅读前需要了解:什么是AS(自治区域)AS中的子网转发表1、BGP的任务前面已经讲到了AS内的路由协议,比如OSPF,那么假如两个路由器不在同一个AS内呢?这就要用到BGP。BGP的一个重要任务是不同AS间的路由,不过BGP也可以进行AS内的路由(后面也会提到)。2、BGP中的前缀BGP中的分组不会被路由到特定的IP,而是会路由到CIDR化的前缀(prefix)。这个前缀代表了一个或者一组子网。CIDR:将子

2021-11-21 19:18:35 2504

原创 POJ 3684 Physics Experiment

Physics ExperimentTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 5009 Accepted: 1786 Special JudgeDescriptionSimon is doing a physics experiment with N identical balls with the same radius of R centimeters. Before the experiment, all N ba

2021-11-19 20:12:07 819

原创 python or 运算符 用作判断两变量的真假

举例:>>> 2 or 32>>> 5 or 0.05>>> [] or 33>>> 0 or {}{}用法:or左边的变量or右边的变量结果xy假如x为true,结果为x,否则为yLeft Object Right Object Result of x or yx y x, if it evaluates to true, otherwise y.注意:可以用bool函数判断一

2021-11-14 22:10:33 841

原创 计算机网络-自顶向下方法(7th) 第四章 Problems 英文题目+部分中文答案

P1. Consider the network below.a. Show the forwarding table in router A, such that all traffic destined to host H3 is forwarded through interface 3.b. Can you write down a forwarding table in router A, such that all traffic from H1 destined to host H3

2021-11-04 14:22:53 27812 1

原创 计算机网络-自顶向下方法(7th) 第四章 Review Questions 英文题目

SECTION 4.1R1.Let’s review some of the terminology used in this textbook. Recall that the name of a transport-layer packet is segment and that the name of a link-layer packet is frame. What is the name of a network-layer packet? Recall that both routers

2021-11-03 20:58:41 3427

原创 计算机网络-自顶向下方法(7th) 第三章 Problems 英文题目+中文答案

P1.Suppose Client A initiates a Telnet session with Server S. At about the same time, Client B also initiates a Telnet session with Server S. Provide possible source and destination port numbers fora. The segments sent from A to S.b. The segments sent

2021-10-27 14:32:12 21435 9

原创 PAT甲级 1017 Queueing at Bank

原题传送门 >>>几个注意点:1、凡是在17:00:00之前(包括17:00:00)到的顾客,银行都必须把它们完全服务完成。(也就是说,在这之前银行不下班)。这个设定也太迷惑了吧???2、17:00:01之后到的顾客,不计入总人数,也没有排队时间。参考代码:#include<cstdio>#include<map>#include<cstring>#include<algorithm>using namespace std

2021-10-25 10:02:06 65

手把手实现VAE(pytorch)

手把手实现VAE(pytorch)

2022-11-09

c语言课设 医院管理系统

大一课设

2021-12-15

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

TA关注的人

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