
c++
码农小非
这个作者很懒,什么都没留下…
展开
-
C++使用LD_PRELOAD劫持(Hook)库函数
更多文章欢迎访问 程序员小非 博客在调试C++程序的时候,我们并不是每次都能拿到源代码,很多时候我们只能得到一个动态库so,调试时这个动态库就是一个黑匣子,没办法查看修改或者在里面加日志,那么我们是不是就没有任何办法对我们感兴趣的函数和参数进行监控和跟踪了呢?对于这种情况,我们一般会挂上gdb,然后在我们感兴趣的地方打上断点,然后查看堆栈里的变量的值。但这个过程时比较繁琐的,尤其是在需要了...原创 2019-07-10 00:30:42 · 2671 阅读 · 0 评论 -
C++中的仿函数
更多文章欢迎访问 程序员小非 博客定义functor的英文解释为something that performs a function,即其行为类似函数的东西。C++中的仿函数是通过在类中重载()运算符实现,使你可以像使用函数一样来创建类的对象。C中是怎么实现这个功能的使用指针函数和回调函数,比如qsort的比较函数#include <stdio.h>#include &...原创 2019-07-10 23:56:16 · 1001 阅读 · 0 评论 -
C++11智能指针(unique_ptr、shared_ptr、weak_ptr)
更多文章欢迎访问 程序员小非 博客很多人怕写C/C++ 程序就是因为指针,因为指针给了程序员高度的自由,同样也赋予了高度的责任,稍有不慎就导致内存泄漏。其实写C++ 可以完全不用指针,尤其C++ 11对智能指针作了进一步的升级,在不需要使用任何裸指针的前提下也可以写出高效的C++ 程序。C++ 11中定义了unique_ptr、shared_ptr与weak_ptr三种智能指针(smart ...原创 2019-07-11 23:31:15 · 9881 阅读 · 3 评论