Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器 软件资源

软件开发小程序制作系统集成与运维空间租用硬件开发视频监控技术咨询与支持——联系电话:0311-88999002/88999003

首页 / 操作系统 / Linux

C++中static关键字总结

C++中static关键字总结

static存在的意义:函数内部定义的变量,在程序执行到它的定义处时,编译器为它在栈上分配空间,大家知道,函数在栈上分配的空间在此函数执行结束时会释放掉,这样就产生了一个问题: 如果想将函数中此变量的值保存至下一次调用时,如何实现? 最容易想到的方法是定义一个全局的变量,但定义为一个全局变量有许多缺点,最明显的缺点是破坏了此变量的访问范围(使得在此函数中定义的变量,不仅仅受此函数控制)。static的声明与定义:静态数据成员要实际地分配空间,故不能在类的声...
C++ 成员函数 回调函数的实现

C++ 成员函数 回调函数的实现

1.回调函数的说明:在进行软件开发的过程中,常会用到一些声明为CALLBACK的函数,这些函数就是回调函数。使用回调函数可以改善软件的结构、提高软件的复用性。比如,在一个规模较大的软件项目中,可以将一些资或相对独立的处理模块封装到动态连接库(DLL) 中,然后通过回调函数在不同的场合来使用这些资源和模块。利用回调函数还可以进行程序间复杂的通信,实现一些通知的功能,在某些场合它是比消息更合适的一种方式;在一些特殊的情况下,回调函数更有不可替代的作用。Win3...
某公司面试概率题值排列组合基础回忆

某公司面试概率题值排列组合基础回忆

昨天看到一道某公司三面的概率题,本质是排列组合,于是乎打算回顾下排列组合:用C(n,m)表示从n个不同的物品选择m个的选法,n>=m combination用P(n,m)表示从n个不同的物品选择m个进行排列的选法,n>=m permutation昨天看到一道面试题,说是概率,其实本质就是求样本空间数的排列组合,和事件数排列组合,然后比一下,本质还是排列组合,当然如果你比较敏锐,直接用概率来算,也是可以的,而且更快54张扑克牌均分成3堆,则大小王...
递归算法转换为非递归算法

递归算法转换为非递归算法

递归算法实际上是一种分而治之的方法,它把复杂问题分解为简单问题来求解。对于某些复杂问题(例如hanio塔问题),递归算法是一种自然且合乎逻辑的解决问题的方式,但是递归算法的执行效率通常比较差。因此,在求解某些问题时,常采用递归算法来分析问题,用非递归算法来求解问题;另外,有些程序设计语言不支持递归,这就需要把递归算法转换为非递归算法。将递归算法转换为非递归算法有两种方法,一种是直接求值(迭代/循环),不需要回溯;另一种是不能直接求值,需要回溯。前者使用一些...
二叉树先序中序非递归算法

二叉树先序中序非递归算法

一直想要写的 二叉树 中序 先序 后序遍历算法当年学习DS最虚的就是这个,因为非递归算法复杂,测试数据不好弄,只能一个一个手动插入。感觉明显比图的难,虽然大家都觉得图更难。。。。。递归的太简单了,就不写了。关键是非递归版本。二叉树的常见问题及其解决程序 http://www.linuxidc.com/Linux/2013-04/83661.htm【递归】二叉树的先序建立及遍历 http://www.linuxidc.com/Linux/2012-12/75...
STM32处理器的AD难点整理

STM32处理器的AD难点整理

1.STM32的AD转换,可以将转换任务组织为两个组:规则组和注入组。在任意多个通道上以任意顺序进行的一系列转换构成成组转换。例如,可以如下顺序完成转换:通道3、通道8、通道2、通道2、通道0、通道2、通道2、通道15。在执行规则通道组扫描转换时,如有例外处理则可启用注入通道组的转换。可以模糊的将注入组的转换理解为AD转换的中断一样,规则通道组的转换是普通转换,然而注入组的转换条件满足的情况下,注入组的转换会打断规则组的转换。如果规则转换已经在运行,为了在...
Linux系统编程之获取文件信息

Linux系统编程之获取文件信息

利用系统调用stat()、lstat()以及fstat(),可获取与文件有关的信息,其中大部分提取自文件i节点。以上3个系统调用之间仅有的区别在于对文件的描述方式不同。1 stat()返回所命名文件的相关信息。2 lstat()与stat()类似,区别在于如果文件属于符号链接,那么所返回的信息针对的是符号链接自身(而非符号链接所指向的文件)。3 fstat()则返回由某个打开文件描述符所指代文件的相关信息。系统调用stat()和lstat()不需要对所操作...
C#异步编程初学笔记

C#异步编程初学笔记

委托C#的异步编程是用委托实现的,关键字是delegate 。它的意义其实是简单明了的,正如它的名字一样是用于被委托执行某些程序。怎样声明一个委托对象就不说了,网上很多资料。invoke和begininvoke这两个函数都是用于启动委托所负责的函数,其功能相信在网上随便找下也能找到。invoke实现的是同步运行,begininvoke实现的是异步运行,通常我们使用begininvoke来避免主线程被阻塞。但是,今天刚用到这个异步编程方法,用了beginin...
基于颜色直方图的搜索

基于颜色直方图的搜索

图片搜索是指将输入图片于目标图片库的图片进行一一匹配,得到与其相似的图片。当然图片搜索可以有多种方法,可以根据像素匹配或者图像特征匹配,在我做的应用中,是用颜色的直方图作为搜索和匹配依据,得到输入图片与其他图片的差距值,这个值体现了图片不同的颜色总体感觉。图像像素值为0到255,因为是彩色,所以颜色点的种类数目是255的三次方,如果对每一个颜色点进行计算它在整张图片占的比重,不仅计算直方图的时候开销大,在匹配的时候计算量更是大得惊人。所以我们将这些颜色点进...
C#图像添加高斯噪声和椒盐噪声及图像恢复

C#图像添加高斯噪声和椒盐噪声及图像恢复

图像噪声是影响人们接受图像信息的因素,常见的噪声有高斯噪声和椒盐噪声。因为最近课程要求,做一个图像恢复的Project,所以掌握了给图像添加噪声以及去除噪声的方法。给图像添加高斯噪声高斯噪声是大量具有正太分布的随机变量性质的值加到原图像造成的,要给图像添加高斯噪声,其实问题就是怎么产生正太分布随机变量。首先用Randdom对象的NextDouble产生两个0-1之间的随机变量r1,r2,计算double result = Math.Sqrt((-2) * ...
Java的char类型真的可以存汉字么?

Java的char类型真的可以存汉字么?

针对char类型存入汉字的进一步解析及一些编码知识。疑问Java中的变量是否都是以Unicode编码存储的。目录谈谈Unicode编码,简要解释UCS、UTF、BMP、BOM等名词0、big endian和little endian1、字符编码、内码,顺带介绍汉字编码2、Unicode、UCS和UTF2.1、内码和code page3、UCS-2、UCS-4、BMP4、UTF编码5、UTF的字节序和BOM6、进一步的参考资料附录1 再说说区位码、GB231...
Java枚举在Android项目应用

Java枚举在Android项目应用

今天修复一个公司很早以前的Android应用功能,里面的代码逻辑已经完全错乱,然后发现返回的数据完全不对了。然后修复了整整两天。然后我重新整理了一遍,重构就算不上了。然后就用上了枚举。什么是枚举?我以前也不懂,当时我看见公司的项目中使用了枚举当做项目一个控制,比如修改已经写好的app然后为一些手机厂商做定制版。可能要去掉广告,还有跳转到商店url都不同,特别是国内基本都没有google play。我们为了避免以后的修改,就会写个枚举来控制它。Ubuntu ...
Android应用Theme

Android应用Theme

Android切换Theme主流三种方式来切换Theme,第一种是通过内置的style来切换,一般用于夜间模式/日间模式切换。第二种是通过apk来实现插件化,第三种是通过下载zip进行解压到到相应的app文件下,应用讲需要文件读取到内存中。这篇是介绍第一种android切换Theme的方法。Ubuntu 14.04 x64配置Android 4.4 kitkat编译环境的方法 http://www.linuxidc.com/Linux/2014-05/10...
<< 3621 3622 3623 3624 3625 3626 3627 3628 3629 3630 >>