- 博客(5)
- 资源 (1)
- 收藏
- 关注
原创 Chromium Base学习笔记 —— Weakptr
WeakPtr 不会影响Object的声明周期。 任何其他的对象,包括它自己在任何时间都可以delete。WeakPtr存在的意义就是保证其他对象访问它的时候的安全性(有可能被意外delete,所以访问到Null等)// EXAMPLE: class Controller { public: void SpawnWorker() { Worker::StartNew(w
2017-07-13 16:55:14
1266
原创 Chromium Base学习笔记 —— Callback
Callback对象在传递过程中,必须是const-reference类型。基本用法如下:int Return5() { return 5; }base::Callback func_cb = base::Bind(&Return5);LOG(INFO) 绑定类方法:绑定类方法的时候,该Class必须继承自RefCounted。如果需要在Thread中传递,那么需
2017-07-13 11:26:56
2349
原创 __cdecl、__clrcall、__stdcall、__fastcall、__thiscall、__vectorcall等含义
调用约定(Calling Convention) 是计算机编程中一个比较底层的设计,它主要涉及:函数参数通过寄存器传递还是栈?函数参数从左到右还是从右到左压栈?是否支持可变参数函数(vararg function or variadic function)?是否需要函数原型?调用者(caller)还是被调用者(called or callee)清理堆栈?官方详解可见:h
2017-06-13 13:55:34
2236
原创 Windows中VS_VERSION_INFO详解
每个exe或者dll文件,都可以生成自己的version文件例如,project的名字是Demo,在工程目录下,有个Demo.rc文件,内部会有一个VC_VERSION_INFO的结构,如下:其中有以下信息:FileVersion:The Value member identifies the version of this file. For example,Valu
2017-05-16 18:25:35
4794
原创 OpenSSL编译方法
自己编译openssl-1.1.0e版本的OpenSSL,按照网上的方式编译,发现太多坑了ms\do_msms\do_masmms\do_nasm等都找不到命令后来发现官方文档有详细的编译方法,如下:(在INSTALL文件中介绍)其中,nmake会出现找不到命令的错误,需要执行如下脚本:C:\Program Files (x86)\Microsoft Vis
2017-05-15 15:39:57
654
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人