cpp加油站 cpp加油站
3年前
【deque容器系列二】基于STL源码分析deque容器插入和删除时内存都是怎么变动的
上篇文章我们介绍了deque容器整体结构和构造实现,链接如下:本篇文章接上篇,继续基于gcc中stl的源码剖析deque容器插入、删除、取值的实现原理,以提问者的角度去深入分析这些操作过程中发生了什么,并对deque容器适合使用的场景和使用时的注意事项进行说明。说明一下,我用的是gcc7.1.0编译器,标准库源代码也是这个版本的。按照惯例,还是先看一下本文
Kubrnete Kubrnete
3年前
递归之N皇后问题
问题描述:N皇后问题是指在N\N的棋盘上要摆N个皇后,要求:任何两个皇后不同行,不同列也不再同一条斜线上,求给一个整数N,返回N皇后的摆法数。N皇后问题涉及到回溯的思想。我们通常用递归解决,代码实现会比较简单。递归其实可以看作底层帮我们维护了一个自动push、pop的堆栈。网上也有很多N皇后的相关题解,这篇文章经过我的整理,保
Wesley13 Wesley13
3年前
jabdp之编写javascript(二)
5、字段的事件编辑在申购单的第二行里是填写供应商的信息,要是每次都一个一个的填会很慢,我们可以先在【基础信息】的【供应商信息】模块里先填写好。然后通过js代码,实现一选供应商名称,其他的联系人、手机号码、地址全部都跳出来。步骤一:准备好供应商信息现在基础信息菜单下建好【供应商信息】模块,然后【供应商信息】
并发编程
并发编程笔记本博客根据学习而做的笔记,链接如下一、基本概念1、进程与线程进程程序由指令和数据组成,但这些指令要运行,数据要读写,就必须将指令加载至CPU,数据加载至内存。在指令运行过程中还需要用到磁盘、网络等设备。进程就是用来加载指令、管理内存、管理IO的。当一个程序被运行,从磁盘加载这个程序的代码至内存,这时就开启了一个进程。进程
Wesley13 Wesley13
3年前
java 学习 语言特色。
1.总体来说java像一个不开窍的规则制定者。包名,类型,太实在了。文件名和类名必须对应,一个文件只能有一个PUBLIC的类。定义了包名,必须按这个路径去放置目标文件。相比c的虚拟命名空间。可能java最初就是设计出来让人用记事本来写代码的?而且还怕人找不到类放在哪个目录,哪个文件下。一个文件只能一个public
Wesley13 Wesley13
3年前
unity序列化
什么是序列化unity的序列化在unity的开发中起着举重足轻的地位,许多核心的功能都是基于序列化和反序列化来实现的。序列化简单来讲就是就是将我们所要保存的数据进行二进制存储,然后当我们需要的时候,在读取二进制文件,反序列化回来。下面是一些常用的序列化的例子:存储脚本化的数据。在我们的c代码中,可以将我们所
Stella981 Stella981
3年前
Play Scala 开发技巧
在系统开发中,我们经常需要保护一些安全性较高的接口,限制这些接口每秒处理的请求数量。例如对于一个计算密集型接口,假设压测值是100rps,如果实际情况长期高于这个值,则会引起滚雪球效应,最终导致系统崩溃。下面我们一起来看看如何在Play中实现一个完全异步非阻塞的请求限速?本文代码已提交至 playcommunity(https://www.os
Wesley13 Wesley13
3年前
LGPL 协议详解
Qt有两个许可证:LGPL和商业协议。这两个协议在现在的Qt版本中的代码是完全一致的(潜在含义是,Qt的早期版本,商业版的Qt通常包含有一些开源版本所没有的库,比如QtSingleApplication这个库)。所以现在对于普通开发人员和部分商业公司来说,使用LGPL版本的Qt可以节省很大的开销。这两个版本最大的区别在于,前者是免费
Wesley13 Wesley13
3年前
C++ 进制转换 十进制十六进制八进制二进制相互转换
思路:1.下面我把相互转换的所有类型都写出来了。实际上都是通过十进制中转的,这样比较简单,写出X进制转成十进制和从十进制转成X进制的两份代码直接拷贝就完成了剩余的部分。哦,对,自己封装了一个charToDigit函数,主要是将字符转为数字用的。2.十六进制转十进制转八进制:!(https://images2018.cnblogs.c
Easter79 Easter79
3年前
TinyScript语言介绍
许多的人使用Java来作为主要的编程语言,许多的时候感觉代码太过繁复,当然有Scala、Kotlin、Python等等语言号称可以解决此问题,但是毕竟生态圈的切换不是个小问题。同时语法结构和Java相去甚远也导致切换的成本毕竟高。为此本人做了一下尝试,准备走一个中间路线,主题还是用Java语言,但是在需要的时候用TinyScript来解决一下问题,然后再