惯用c++,在windows平台做应用开发和底层研究,并对ua语言有深入的了解
官方说 @@ROWCOUNT 会被以下几种语句清0 原文如下: Statements such as USE, SET , DEALLOCATE CURSOR, CLOSE CURSOR, BEGIN TRANSACTION, or COMMIT TRANSACTION reset the ROWCOUNT value to 0.
本文转自:http://senlinzhan.github.io/2017/09/17/boost-asio/ Boost.Asio 有两种支持多线程的方式,第一种方式比较简单:在多线程的场景下,每个线程都持有一个io_service,并且每个线程都调用各自的io_service的run()方法。
本文转自:http://blog.csdn.net/byxdaz/article/details/71088812 一、io_service的作用 io_servie 实现了一个任务队列,这里的任务就是void(void)的函数。
以前经常学习虑函数 最多的是当基类指针构造子类对象时,调用函数的应用,但是以前没这一点: 子类对象调用基类成员函数A,然后基类成员函数又会调用一个类成员函数B,这个类成员函数B在子类中也定义,基类中也定义(基类和子类同时拥有)。
git reference https://git-scm.com/docs 克隆 从远程仓库克隆一个项目到本地文件夹,命令如下:$ git clone https://github.com/libgit2/libgit2 这个命令不用手动创建目录 查看状态 $git status查看状态 追踪新文件 当你要让git把一个新的文件认定为要提交的文件时,就要追踪这个文件,命令如下:$ git add file.txt 将一个文件的状态改为stage状态 git add 告诉git你想在下次commit的时候把什么文件包含进去。
表示本地库有几个文件修改没有提交,说明本地有几个文件没有跟踪
std::thread 构造之后 使用 detach。就可以了
在我的电脑上要想通过 std::wcout输出 宽字符 需加入以下代码 #include #include void main() { _setmode(_fileno(stdout), _O_U16TEXT); } 而且以后的输出不能用std::cout必须要用std...
非节假日假如你今天15点之前买入5000,今天15点之前可以随意撤出,到今天15点之后就是确认期,不可撤出。 到明天15点过后就确认了份额。到后天15点之后就可以看出收益了
在_ConnectionPtr析构的时候要将_ConnectionPtr置NULL ADODB::_ConnectionPtr conn;conn.CreateInstance(__uuidof(ADODB::Connection));.
为什么要用移动语义 先看看下面的代码 // rvalue_reference.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include class HugeMem { public: HugeMem(int si...
boost boost::asio::read 尝试读一定数量的字节,直到读到为止,或者出错 socket.read_some 读一下socket,读到多少算多少 带async的类似
封装和解析类似json的 key-value 示例 {"ID" = 333,"name"="zds","3333"="ende"} msgpack::sbuffer sBuf; msgpack::packer pker(&sBuf); pker.
最近在用印象笔记写心得写想法,有时候我在想,在这个博客里要不要分享我对我周围事物的看法,有时是可行的,但某些感觉会涉及一些私人以及感情的事情,感觉没有必要写在这个博客里,所以本博客以后多记技术。生活的感悟只相对少放一点。
从来正视过自己的性格,没有放空自己来看看自己到底是什么样的。 前几天因为锁事吵了一架,后来后悔了,因此我觉得有必要正视一下自己,提升一下自己的在性格上的缺点。 我平时做事比较理性,还有一点是,认为自己没有错的时候就不去哄人,而女人和男人完全不是一种类型的动物。
今天中午睡觉的时候突然接到一个电话,一看是王家军,打电话来听出来对方是一个女的她老婆,哭着给我说说王家军不在了,当时我不知道什么叫作不在了。我还想问,但是听出电话那边悲伤和哭泣。我迅速开车去了她们家里,得知是王家军掉河里,一天一夜都没有找见。
std::string 的begin到end是不包含 ‘\0’的
从昨天夜里醒来开始,头疼欲裂到现在,太可怕了。 虽然有些人说,你不会少喝点吗?but 正在喝酒的人喝的兴高采烈,他无法顾及。 最好的办法就是别去喝酒的场合,或以一个从来不喝酒的人自居。
经常为别人考虑不是一件好事,这往往会忽略自己的想法,活在别人的世界里把自己的时间浪费在别人的身上,别人不会因此感激你,别人会忽略你。 所以要改掉这种毛病,任何事都不要考虑别人的感受,这样会让自己受委屈,女人需要一个征服她的女人,男人则要有一定的主动性。
交流促使技术的进步,人类文明就在于交流,一切进步都是技术的交流,否则都是必门造车。
这种情况一般多个线程读是不需要加锁的。就在写的时候需要加锁。 那么要做的就是让不写的时候,读不受同步限制。让多线程自由的读。 这个时候就要用读写锁 boost已经有读写锁,而c++ 14才有读写锁。
本文已于20170903更新完毕,所有boost asio 代码均为本人手抄。编译器为vs2013,并且所有代码已经上传,本文下方可下载源码 为了学习boost asio库,我是从boost的官方boost asio的教程学起的。
asio 中的resolver一般用于将host等信息转化为socket信息,类似于getaddrinfo() 以下代码 boost::asio::io_service io; tcp::resolver resolver(io); tcp::resolver::...
这个错误的中文解释是:由于线程退出或应用程序请求,已中止 I/O 操作。 最近几天学习boost asio 在抄官方的一个实例代码时遇到 了,这个错误搞了我三天才解决,就是在一行代码中少了一个 s 所致。
暂停喝酒也有好几个月了,我一直以不喝酒而自居。然而有时候就想来那么几下,于是乎今天喝了一点,喝酒之后的感觉如何形容呢?那我借着酒劲总结一下吧 胆子大,有时候会深踩油门 喜欢把自己内心深入的事情说出来,由其是比较悲伤的事,即便这没有任何意义 怀旧,患得患失,比较喜欢看好几年前自己写的心情。
今天今天开始,每日学习与工作计划移至日事清APP。 博客园依然是我写文字的主战场。日事清APP仅限于做计划。
#include #include #include /* template< std::size_t Len, std::size_t Align = default-alignment >struct::type aligned_storage; 相当于一个内建的POD类...
无意中看到了ted中关于一个拖延症的演讲,演讲者归纳了拖延症的一个根本原因:外界强制和截止时间。这两个如果缺少一个的话,某件事就有可能一直拖着。 比如上班时间强制为8.30,那当你早晨即便很不想起床,但是你想到8.30要到公司,那你自然得起床了,这就是外办强制。
// Bind_std_function.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include #include #include #include //学习bind的用法 void f(int n1, int n2...
好多人喜欢把工具函数做成static member function。这样以增加隐蔽性和封装性,由其是从C#,java转而使用c++的开发人员。 例如: class my_math { public: static UINT Hash_XYZ(float x,float ...
稻盛和夫曾经说过一个故事,明治时期的手艺人被天皇召见,虽然都是不读书的乡下人,但一辈子兢兢业业地做一件事情,自然有一股高贵的气质。理想的程序员,应该就是循着这种高贵的气质而去的吧。 不要说自己要干什么,要给自已培养做什么的兴趣。我就要当这个手艺人。 源码不会被心领神会,除非自己写一次。
function MakeCounter() local t = 0 return function() t = t + 1 return t end end local func = MakeCounter() for...
要文转自:http://www.cnblogs.com/ymy124/p/3632634.html 首先, C++中的explicit关键字只能用于修饰只有一个参数的类构造函数, 它的作用是表明该构造函数是显示的, 而非隐式的, 跟它相对应的另一个关键字是implicit, 意思是隐藏的,类构造函数默认情况下即声明为implicit(隐式).
有时候你会发现,一个项目,第一次写经常是是按函数式编程 ,写的功能越多,确发现,代码重复太多,某一个东西应该提取出来写成一个工具类。但是为什么前期没能构思出这个类呢? 如何从一个庞大的功能里分离出一些对象,这些对象有较强的内处理,不毕让外界知道,他只提供给外界一个主要的功能,而不是与主功能混为一谈。
1.CoInitialize和CoInitializeEx的功能 CoInitialize是在当前线程初始化Com组件的函数,并且初始化为STA模式(单线程模式),一般新的程序建议使用CoInitializeEx来替代。
由于在调用RasEnumEntries和RasEnumConnections在xp和win7以上的操作系统中有所不同,所以在win7下正常的代码在xp不一定就可以。 主要是在win7 下可以给参数传NULL来得到所需要大小,而在xp下则不可以传NULL,在xp下只需要传一个对象的大小,然后得到所需大小。
任何事情要想做好,花时间是必要的。要么放弃一些事,要么不要去做自己没有时间做的事,要么放弃不太重要的事,而去做自己认为重要的事。
可以实现多客户端对一服务端,服务端为客户端提供服务。 其实一服务端对应每一个client pipe都新建立了一个pipe。windows允许建立多个同名pipe 效果: 服务端代码: #define BUFSIZE 2048 unsigned __stdcall MsgPr...
标题党
出现异常主要表现 导致异常的关键代码不是因为printf 或cout,而是因为使用栈空间超出的原因 下图试图在栈上分配1024000个char的空间,确发现崩溃 的位置是printf,这就是这个问题难找的原因。
#define print_vector(v1) \ for(auto iter = v1.begin();iter != v1.end();iter++) \ cout
经常遇到块加密算法,必须固定位进行加密,所以有必须进行补充 如果是16位一般按照下面的原则 原则:必须补,并且最后一个字节为补的字节数 补的个数为 16 - Len % 16 规则:最后位为后补的个数即 16 - Len % 16
这个选项为false时,当连接断开时,第一次调用服务会抛出异常,而第二次调用时,也会自动连接。
不想深究,只是可以编译出想要的lib文件 1.打开visual studio 2012 命令提示 2.进入 boost目录 3.运行booststrp.bat得到b2.exe、bjam.exe、project-config.
_beginthreadex 当失败时返回0 而不是 -1L _beginthreadex调用之后返回的HANDLE,必须手动CloseHandle,才能正确释放句柄。
自己决心今天做一个 xxx项目,写完xxx功能。 早晨9点多张三说:“A项目有一个 bug要修复”,估计十分钟就修复了,然后放弃手头项目去搞。修复这个bug的时候,发现这个A项目有些代码还有可以优化的地方,于是开始搞优化,优化完又测试。
今年感觉过的异常的快,不知为什么。 2017年要养成一个习惯,就是把瞬间有的想法认为很重要并且有单方的要记录下来,因为我总是渐忘。 还有一点就是:不要让自己进入忙的要死的状态,给自己大脑留足够时间来自由思考 前半年忙忙碌碌,像一只耕地的牛,拼命的工作。
支持所有DirectX的游戏模型提取 有需要的可以直接联系我!QQ290387340
http://files.cnblogs.com/files/zhangdongsheng/ProcessExplorer.zip