既然“指针”的使用者一不小心就可能导致内存泄漏,那么我们如何能够使得指针的使用变得更安全呢?从C++面向对象的角度分析,我们有没有可能将“指针”封装起来,使得用户不直接接触指针,而使用一个封装后的对象来替代指针的操作呢?
答案是显然的,“智能指针”(smart pointer)正解决这类问题,尤其是在防止内存泄漏方面做得非常突出。C++标准库std中提供了一种“智能指针类”名为"...
#import
int main(int argc, const char * argv[])
{
#pragma mark----------数组
//数组是容器,相同数据类型
//构造类型
// int a[3]={5,2,0};
//类型
// int[3];
//变量名
// a;
//初值
// {5,2,0}...
对于C和C++程序员来说,一定不会对NULL感到陌生。但是C和C++中的NULL却不等价。NULL表示指针不指向任何对象。
NULL是一个宏定义
在C中将NULL定义为void*指针值为0
#define NULL (void*)0
在C++中,NULL被定义为常数0
#ifndef NULL
#ifdef __cplusplus
#define NULL 0...
??
Reactor是由Schmidt, Douglas C提出的一种模式,在高并发服务器实现中广泛采用。改模式采用事件驱动方式,当事件出现时,后调用相应的事件处理代码(Event Handler)。
这个模式是高并发服务器的基础,如nginx和lighttpd。这两种对大并发,但每个请求处理都很快的场景非常适合。通常的web访问就是这个特点。
结构
包括了5个部分,其中h...
java中Jnotify文件、目录监视库的使用:
jnotify调用系统类库,效率高,稳定地监视文件或者目录及其子目录的文件或者目录的增删改。
本文讲解如何简单使用。...
最近工作需要,用Cython写了*.pyx扩展,并将其编译成C文件,最后转换为so扩展,供python引用
使用 distutils 编译,建立一个
setup.py
的脚本
from distutils.core import setup
from distutils.extension import Extension
from Cython.Distutils import b...
python class
分为三个部分:class and object(类与对象),inheritance(继承),overload(重载)and override(覆写)。
class and object
类的定义,实例化,及成员访问,顺便提一下python中类均继承于一个叫object的类。
class Song(object):#definition
d...