C++
文章平均质量分 74
maverick1990
这个作者很懒,什么都没留下…
展开
-
动态二维数组的分配与释放
转自:http://blog.csdn.net/vinson0526/article/details/11565969 动态二维数组的分配与释放 两种方法:1。先定义一个一维数组的类型,然后再用该类型定义一个一维数组(实际上已经成为二维的)转载 2013-09-11 16:31:01 · 1945 阅读 · 0 评论 -
解决C++项目编译时的multiple definition of重定义问题
转自:http://www.cppblog.com/baye/archive/2007/11/11/36398.html编译C++工程时,出现“multiple definition of ”,即有很多函数和变量的重定义我把所有的全局变量写在一个global.h里,然后其他文件都include 了它 ,于是出现了 multiple definition of转载 2015-08-20 11:13:44 · 21534 阅读 · 1 评论 -
Linux进程间内存共享机制mmap详解
转自:http://kenby.iteye.com/blog/1164700共享内存可以说是最有用的进程间通信方式,也是最快的IPC形式, 因为进程可以直接读写内存,而不需要任何数据的拷贝。对于像管道和消息队列等通信方式,则需要在内核和用户空间进行四次的数据拷贝,而共享内存则只拷贝两次数据: 一次从输入文件到共享内存区,另一次从共享内存区到输出文件。实际上,进程转载 2015-08-28 13:30:12 · 12552 阅读 · 1 评论 -
PHP调用C++扩展时memset/sizeof函数无效的问题
问题:在C++中,我习惯用memset函数对数组进行初始化,如:int sz = 100;int *a = (int*)malloc(sizeof(int) * sz);memset(a,0,sizeof(a));上面的代码动态开辟了一个int数组a,大小为sz,并把开辟的这段内存赋值为ASCII码0在PHP调用这段C++代码时(使用url调用PHP函数),发现memset函数并没原创 2015-07-14 11:55:57 · 936 阅读 · 0 评论 -
在Windows下用C扩展PHP(打包成dll)的方法
1、目的为了在php中使用C语言的扩展,本文介绍一种将C扩展打包成dll文件,提供给php调用的方法2、需要安装的软件(1)wamp server:其中包含php,本文中php版本为5.5.12安装路径如:C:\wamp\,其中C:\wamp\bin\php\php5.5.12为php所在路径,将其加入环境变量Path(2)Visual Studio:本文中版本为VS2原创 2015-06-16 19:27:22 · 7477 阅读 · 0 评论 -
在Linux下用C扩展PHP(打包成so)的方法
本文主要讲一下在Linux下用打包C扩展程序.so文件和Windows下的不同,详细的代码和配置方案请参加另一篇博客:http://blog.csdn.net/maverick1990/article/details/46519045步骤:1.安装php环境到目录 /usr/local/php/ 目录下2.下载相同版本的php源码包,安装到 /root/php-5.6.原创 2015-07-07 11:52:24 · 3569 阅读 · 0 评论 -
调用dll时出现"Unhandled exception 堆已损坏(heap corruption)“异常解决方法
转自:http://blog.sina.com.cn/s/blog_668aae780101iou9.htmlhttp://yaogangshi.iteye.com/blog/1001690http://bbs.csdn.net/topics/390019506问题:在用c++扩展php进行调试时,用malloc或new开辟数据空间并将php的array数据传入时,出现转载 2015-06-26 14:16:20 · 12196 阅读 · 0 评论 -
用C++扩展php时函数重定义redefinition问题
问题:我在用C++扩展php时,用到了一些数学库函数如sqr,sqrt等,需要在C++扩展工程的源文件test.cpp中#include ,但是编译时发现这些函数出现了重定义redefinition的问题。多次尝试后,发现将test.cpp开头的#include "php.h" 去掉时,就没有这个问题了原因:查询得知,因为php.h中,将很多C++库函数做了inline内联,直接定原创 2015-07-07 11:13:26 · 1086 阅读 · 0 评论 -
在Windows下用C++扩展PHP
转自:http://521-wf.com/archives/241.html这篇文章主要介绍了用C++开发PHP扩展时,和C语言的区别目前,PHP编程语言也是相当成熟,各种文档,各种问题,只要Google一下,总有你想要的答案。当然“如何开发PHP扩展”的文章也不少,但是很少有专门来介绍使用C++开发PHP扩展的介绍。C++编程语言功能的强大,促使好多公司后台程序选择使用它,因此碰转载 2015-07-03 11:36:33 · 778 阅读 · 0 评论 -
VS2013开发调试PHP扩展
转自:http://blog.csdn.net/a600423444/article/details/12720543前言开发中必不可少的环节就是调试,而调试的方式直接影响到开发效率和软件质量。之前开发PHP扩展,一直不会DEBUG调试,每次调试都是重新编译、执行再运行PHP脚本看运行状况再调试。太痛苦、太影响效率了。也百度、谷歌了如何调试PHP扩展的问题,但回答的几乎都是GD转载 2015-06-24 12:24:51 · 3228 阅读 · 0 评论 -
priority_queue的用法
转自:http://www.cnblogs.com/flyoung2008/articles/2136485.htmlpriority_queue调用 STL里面的 make_heap(), pop_heap(), push_heap() 算法实现,也算是堆的另外一种形式。先写一个用 STL 里面堆算法实现的与真正的STL里面的 priority_queue用法相似的priority_原创 2014-03-28 17:08:07 · 1153 阅读 · 0 评论 -
C++<algorithm>中sort的比较函数写法
定义排序函数:方法1bool Less(const Student& s1, const Student& s2){return s1.name }std::sort(sutVector.begin(), stuVector.end(), Less);或者bool operator{return s1.name }std::sort(sutV原创 2014-07-13 14:17:42 · 16479 阅读 · 1 评论 -
C++ STL 容器技术 之 deque双端队列容器
转自:http://hi.baidu.com/xuehuo_0411/item/f72d5120d5006ad0a517b6b8C++ STL 容器技术 之 deque双端队列容器简介:deque双端队列容器(double-ended queue)与vector非常相似,算法的时间复杂度也是常数阶O(1),deque内部的数据机制和执行性能与vector不同,一般说来,转载 2014-04-24 23:25:25 · 3437 阅读 · 0 评论 -
STL---set基本使用--取集合的交、并、差、对称差
转自:http://blog.sina.com.cn/s/blog_4c98b9600100az2v.htmlset是集合,其底层数据结构是红黑树,STL中set、map均采用红黑树结构作为底层支持,红黑树与AVL树类似,是一种平衡查找树。set的特性是集合的基本特性:元素唯一性等。通过algorithm中提供的set_intersection、set_unio转载 2014-04-08 17:00:04 · 4275 阅读 · 0 评论 -
二维数组的动态分配(new)、初始化(memset)和撤销(delete)
转自:http://hi.baidu.com/jian_fei_yang/item/cf49006f5d53620aa0cf0ffe一维数组的动态分配,初始化和撤销都好说,几乎每一本C++教材都会做出详细的说明。具体如下:动态分配(例如分配10个单元的): int *array=new int [10];初始化:memset(array,0,sizeof(arr转载 2014-04-02 23:21:24 · 19736 阅读 · 0 评论 -
WaitForSingleObject函数用法
转自:http://blog.csdn.net/bichenggui/article/details/4551453 需包含的头文件: 等待函数可使线程自愿进入等待状态,直到一个特定的内核对象变为已通知状态为止。这些等待函数中最常用的是WaitForSingleObject: DWORD WaitForSingleObject(HANDLE hObject, DWORD dw转载 2013-10-29 17:24:51 · 807 阅读 · 0 评论 -
最长公共子序列LCS问题
LCS是一个很基础的DP问题,最近看的一些东西的根源都是这个问题,在此总结一下。设#include#include#include#includeusing namespace std;const int maxn = 100;string a,b;int n,m;int dp[maxn][maxn];int MAX(int x,int y)原创 2013-10-09 14:57:54 · 1098 阅读 · 0 评论 -
内存泄漏检查工具valgrind的安装与使用
转自:http://blog.chinaunix.net/uid-26000296-id-4161684.html一、 安装1. autoconf# wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz # tar -zxvf autoconf-2.69.tar.gz # cd autoconf-2.69# ./转载 2015-08-20 16:47:13 · 4087 阅读 · 0 评论