随笔分类 - C++学习
摘要:C++虚函数与虚函数表 多态性可分为两类:静态多态和动态多态。函数重载和运算符重载实现的多态属于静态多态,动态多态性是通过虚函数实现的。 每个含有虚函数的类有一张虚函数表(vtbl),表中每一项是一个虚函数的地址, 也就是说,虚函数表的每一项是一个虚函数的指针。 没有虚函数的C++类,是不会有虚函数
阅读全文
摘要:布隆过滤器(Bloom Filter)详解 2012-07-13 18:35 by Haippy, 29358 阅读, 6 评论, 收藏, 编辑 布隆过滤器[1](Bloom Filter)是由布隆(Burton Howard Bloom)在1970年提出的。它实际上是由一个很长的二进制向量和一系列
阅读全文
摘要:使用stringstream对象简化类型转换C++标准库中的<sstream>提供了比ANSI C的<stdio.h>更高级的一些功能,即单纯性、类型安全和可扩展性。在本文中,我将展示怎样使用这些库来实现安全和自动的类型转换。 为什么要学习 如果你已习惯了<stdio.h>风格的转换,也许你首先会问
阅读全文
摘要:译者注:这是一篇介绍如何使用libcurl的入门教程。文档不是逐字逐句按原文翻译,而是根据笔者对libcurl的理解,参考原文写成。文中用到的一些例子,可能不是出自原文,而是笔者在学习过程中,写的一些示例程序(笔者使用的libcurl版本是:7.19.6)。出现在这里主要是为了更好的说明libcur
阅读全文
摘要:Visual Studio快捷键 [VS2008/VS2005]快捷键 VS系统通用快捷键: 1、自动排版(类似VC6中的Alt+F8) 编辑.格式化选定内容 Ctrl + K,Ctrl + F 根据周围的代码行,正确缩进选定的代码行。 2、注释与去掉注释功能。 编辑.注释选定内容 Ctrl + K
阅读全文
摘要:在Vista/Win7/Win8下,有一个系统兼容性助手功能,在安装程序安装完成或卸载完成后,可能会弹出应用程序兼容性助手相关的提示,提示程序可能安装不正确,很是烦人。如下图所示: 事实上,我们的程序兼容性是没问题的,只不过是在程序中没有指定应用程序兼容的操作系统,所以导致了这些问题。 VS2008
阅读全文
摘要:Windows系统版本判定那些事儿 前言 本文并不是讨论Windows操作系统的版本来历和特点,也不是讨论为什么没有Win9,而是从程序员角度讨论下Windows获取系统版本的方法和遇到的一些问题。在Win8和Win10出来之后,在获取系统版本时,可能很多人都碰到了类似的问题,为什么以前工作得很好的
阅读全文
摘要:在软件开发中,我们经常要获当前系统的版本号,判断当前是什么系统,获取获取物理内存和可用内存大小,获取CPU名称、内核数目、主频,获取MAC地址,获取屏幕分辨率,下面的这个c++类将包含所有这些信息。
阅读全文
摘要:创建快速启动栏 在windows软件开发中,软件安装过程中总是需要在快速启动栏创建快捷方式,下面介绍一种快速启动栏创建快捷方式的方法,具体代码如下:(该方法不支持win10,目前还没有找到win10的创建方法,有方法的朋友欢迎推荐) /* * 设置快速启动栏 * szExePath[in]:要创建快
阅读全文
摘要:开始菜单创建快捷方式 在windows软件开发中,软件安装过程中总是需要在开始菜单创建快捷方式,下面介绍一种开始菜单创建快捷方式的方法,具体代码如下: /* * 创建快捷方式 * szExePath[in]:要创建快捷方式的exe文件全路径 * szLinkName[in]:要创建的快捷方式.lin
阅读全文
摘要:创建桌面快捷方式 在windows软件开发中,软件安装过程中总是需要在桌面创建快捷方式,下面介绍一种创建桌面快捷方式的方法,具体代码如下: /* * 创建快捷方式 * szExePath[in]:要创建快捷方式的exe文件全路径 * szLinkName[in]:要创建的快捷方式.link文件的全路
阅读全文
摘要:设置开机启动 很多软件要求软件能够在开机时自启动,下面讲讲如何设置开机自启动。 Windows设置程序的开机启动的方法有很多,这里只讲其中的一种,该方法同时适用于32位和64位的操作系统,只需将需要开机启动的exe程序路径等设置到相应的注册表项中即可,具体的注册表路径如下:HKEY_CURRENT_
阅读全文
摘要:一、线程的创建 你也许会说我一直用CreateThread来创建线程,一直都工作得好好的,为什么要用_beginthreadex来代替CreateThread,下面让我来告诉你为什么。 回答一个问题可以有两种方式,一种是简单的,一种是复杂的。 如果你不愿意看下面的长篇大论,那我可以告诉你简单的答案:
阅读全文
摘要:值得学习的C语言开源项目 1.Webbench Webbench是一个在linux下使用的非常简单的网站压测工具。它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性能,最多可以模拟3万个并发连接去测试网站的负载能力。Webbench使用C语言编写, 代码实在太简洁,源
阅读全文
摘要:首先来看一段java中对字符串加解密的代码: //密钥 private String key = "123456789012345678901234"; //解密过程,先用Base64进行解密,然后再用3DES进行第二次解密,得到明文 public String decryptThreeDESECB
阅读全文
摘要:当我们用Qt Creater时,经常出会出现如下问题: 处理方法如下:用记事本打开你的源代码,然后点另存为,utf-8,编码覆盖,这时中文就没问题了但是会乱码。在字符串前加个宏QStringLiteral把字符串扩起来;这样字符串就不会乱码了。这个问题是qt creator的问题,用vs2010就不
阅读全文