go
-
C++ list(STL list)增加和插入元素详解(insert成员函数插入元素)
可以使用 list 容器的成员函数 push_front() 在它的头部添加一个元素。调用 push_back() 可以在 list 容器的末尾添加一个元素。在下面这两个示例中,参…
-
C++ vector迭代器及用法
正如期望的那样,vector 容器实现了所有可以返回迭代器的成员函数,包括 const 迭代器和 non-const 迭代器,以及反向迭代器。 vector 容器的迭代器是随机访问…
-
Robots协议是什么?
网络爬虫其实是一种灰色产业!没有法律规定爬虫是违法的,也没有法律规定爬虫不违法,主要看爬取数据的类型,如: 高度敏感数据:行踪轨迹信息、通信内容、征信信息、财产信息; 敏感数据:住…
-
Go语言实现RSA和AES加解密
密码学里目前有两大经典算法,一个是对称加解密,其中具有代表性的是 AES 加解密;另一个是非对称加解密,其中具有代表性的是 RSA 加解密。这里就以这两个经典算法为例,简单介绍一下…
-
Go语言垃圾回收
Go语言中使用的垃圾回收使用的是标记清扫算法。进行垃圾回收时会 stoptheworld。不过在Go语言 1.3 版本中,实现了精确的垃圾回收和并行的垃圾回收,大大地提高了垃圾回收…
-
Go语言内存管理简述
内存管理是非常重要的一个话题。关于编程语言是否应该支持垃圾回收就有个搞笑的争论,一派人认为,内存管理太重要了,而手动管理麻烦且容易出错,所以我们应该交给机器去管理。另一派人则认为,…
-
Go语言与C/C++进行交互
Go语言是类C的语言,与C语言有着千丝万缕的联系,在Go语言的代码中可以直接调用C语言代码,但不支持直接调用 C++。 Go 调用 C/C++ 的方式: C:直接调用 C API;…
-
Go语言反射——性能和灵活性的双刃剑
现在的一些流行设计思想需要建立在反射基础上,如控制反转(Inversion Of Control,IOC)和依赖注入(Dependency Injection,DI)。Go语言中非…
-
Go语言关闭通道后继续使用通道
通道是一个引用对象,和 map 类似。map 在没有任何外部引用时,Go语言程序在运行时(runtime)会自动对内存进行垃圾回收(Garbage Collection, GC)。…
-
Go语言RPC(模拟远程过程调用)
服务器开发中会使用RPC(Remote Procedure Call,远程过程调用)简化进程间通信的过程。RPC 能有效地封装通信过程,让远程的数据收发通信过程看起来就像本地的函数…