• 使用 C++ 的 StringBuilder 提升 4350% 的性能

     发表于 1 周 前

    经常出现客户端打电话抱怨说:你们的程序慢如蜗牛。你开始检查可能的疑点:文件IO,数据库访问速度,甚至查看web服务。 但是这些可能的疑点都很正常,一点问题都没有。...

  • C语言格式化字符串漏洞实验

     发表于 2 周 前

    格式化字符串漏洞是由像printf(user_input)这样的代码引起的,其中user_input是用户输入的数据,具有Set-UID root权限的这类程序在运行的时候,pri...

  • C++中泛型使用导致的膨胀问题

     发表于 2 周 前

    博主从事C++软件开发多年,由于之前的开发环境都是资源充足的服务器,不用考虑磁盘空间的问题。最近打算在智能家居主机的嵌入式平台上使用C++进行开发。FLASH存储空间有限,这是必须...

  • C++ 线程同步的四种方式

     发表于 3 周 前

    线程之间通信的两个基本问题是互斥和同步。...

  • C/C++协程库libco:微信怎样漂亮地完成异步化改造

     发表于 1 个月 前

    微信诞生于2011年1月,当年用户规模为0.1亿左右;2013年11月,微信月活跃用户数达到3.55亿,一跃成为亚洲地区拥有最大用户群体的移动终端即时通讯软件。...

  • C 语言中 define 的全部使用方法总结

     发表于 1 个月 前

    学习了这么多年C语言,说实话对宏自以为了如指掌了,没想到看内核代码的时候还是那么吃力,设备驱动代码中有很多这样或者那样的宏定义,各种define,博主在学习的过程中将C语言中所出现...

  • 6 个技巧,提升 C++11 的 vector 性能

     发表于 1 个月 前

    Vector 就像是 C++ STL 容器的瑞士军刀。Bjarne Stoutsoup 有一句话 – “一般情况下,如果你需要容器,就用 vector”。像我们这样的普通人把这句话...

  • 浅谈boost.variant的几种访问方式

     发表于 2 个月 前

    variant类型在C++14并没有加入,在 cppreference 网站上可以看到该类型将会在C++17加入,若想在不支持C++17的编译器上使用variant类型,我们可以通...

  • 现代C++函数式编程

     发表于 4 个月 前

    C++98/03中的函数对象,和C++11中的Lambda表达式、std::function和std::bind让C++的函数式编程变得容易。我们可以利用C++11/14里的新特性...

  • 带你深入理解STL之Vector容器

     发表于 4 个月 前

    C++内置了数组的类型,在使用数组的时候,必须指定数组的长度,一旦配置了就不能改变了,通常我们的做法是:尽量配置一个大的空间,以免不够用,这样做的缺点是比较浪费空间,预估空间不当会...

  • C++11 新特性之右值引用与移动

     发表于 4 个月 前

    右值是一个行将销毁的值,例如(i * 10)这种表达式的值。新标准中允许通过&&标识定义一个右值引用,将其绑定到一个右值上。但是,一个右值引用 变量 又是一个左值,因为它是一个变量...

  • C++ 的脚本语言:ChaiScript

     发表于 7 个月 前

    ChaiScript 是一个可以方便的嵌在 C++ 程序里的脚本语言,相比于 V8(Google JavaScript)和 Lua 来说,它的用法要简单得多。...

  • 在c/c++中解决SHA1WithRSA/ras/X509的过程记录

     发表于 7 个月 前

    这里记录了一种简单的办法,在遇到写c/c++找不到答案时的最简单找代码办法。...

  • C#委托浅析与漫谈

     发表于 9 个月 前

    委托是C#区别于其他语言的一个特色,用它我们能写出简洁优雅的代码、能很方便的实现对象间的交互。...

  • 从一个例子看现代C++的威力

     发表于 10 个月 前

    实现思路也比较简单,问题的本质是将输入的参数值变成一个pair,key是值的字面量,value是变量本身的值,所以生成的pair是这样的std::pair< std::string...

  • qt-eclipse-c++环境配置(图形界面开发)

     发表于 10 个月 前

    qt-eclipse-c++环境配置(图形界面开发) :所需文件下载:QT-eclipse-C++配置所需文件下载 1、 下载Eclipse IDE for C/C++ Deve...

  • C++ 简单的命令行参数阅读器

     发表于 10 个月 前

    Inthis post, the C# version of Command Line Parameter Reader is given and you should see h...

  • C++11和Boost库

     发表于 10 个月 前

    C++11标准中引入了很多Boost库中的东西,对于所有人来说,完全可以使用C++11来替代之前使用的boost库。 但是还有一些事项需要我们注意...

  • C/C++框架和库推荐集合

     发表于 10 个月 前

    值得推荐的C/C++框架和库:值得学习的C语言开源项目 - 1. Webbench  Webbench是一个在linux下使用的非常简单的网站压测工具。它使......

  • 解决点击状态栏时ScrollView自动滚动到初始位置失效办法

     发表于 11 个月 前

    相信细心的开发者都会发现scrollView自带一个功能,当用户点击顶部的状态栏时,scrollView的ContentOffset.y轴会自动滚动到初始位置,效果如图所示:...