auto_ptr是一个模板类,用于管理动态内存分配。请看下面的函数:void remodel (string& str){ string * ps = new string(str); ... str = *ps; return;}上述代码存在这样一个缺陷:没有收回函数中分配的内存。解决方法...
分类:
其他好文 时间:
2015-07-17 11:53:01
阅读次数:
120
#define list_entry(ptr, type, member) container_of(ptr, type, member)在进行编程的时候,我们经常在知道结构体地址的情况下,寻找其中某个成员的地址;但是知道了成员的地址,如果找到这个结构体对应的地址呢?Linux内核中,获取节点地址的...
分类:
其他好文 时间:
2015-07-15 16:30:48
阅读次数:
138
i++是否原子操作 不是原子操作。理由:1.i++分为三个阶段:内存到寄存器寄存器自增回内存这三个阶段中间都可以被中断分离开.2.++i首先要看编译器是怎么编译的,某些编译器比如VC在非优化版本中会编译为以下汇编代码:__asm{ moveax,dword ptr[i] inc eax movd.....
分类:
其他好文 时间:
2015-07-15 14:38:21
阅读次数:
75
fwrite和fread是以记录为单位的I/O函数,fread和fwrite函数一般用于二进制文件的输入输出。#include size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream);size_t fwrite(const v...
分类:
其他好文 时间:
2015-07-14 19:38:37
阅读次数:
98
我们发现设计模式在Java社区很流行,但是在C++社区却没有那么被关注,甚至有点被排斥,究竟是什么原因造成这个差异的呢?
(1)C++内存需要自己管理,所以有些模式在C++里使用不是那么方便,但是Java不用关心内存,所以在Java里的使用设计模式有天生的优势。随着shared_ptr, weak_ptr, unique_ptr等加入C++11,相信这方面会有所改进。
(2)在J...
分类:
编程语言 时间:
2015-07-14 18:06:04
阅读次数:
170
本将主要介绍智能指针shared_ptr和unique_ptr,并简单实现基于引用计数的智能指针。 自C++11起,C++标准提供两大类型的智能指针: 1. Class shared_ptr实现共享式拥有(shared ownership)概念。多个智能指针可以指向相同对象,该对象和其相关资...
分类:
编程语言 时间:
2015-07-14 17:30:18
阅读次数:
254
指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址。要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的类型,指针的值或者叫指针所指向的内存区,还有指针本身所占据的内存区。让我们分别说明。先声明几个指针放着做例子: 例一: (1)int *ptr; (2)char ...
分类:
编程语言 时间:
2015-07-13 18:07:23
阅读次数:
176
效果预览:
xml布局
<com.handmark.pulltorefresh.library.PullToRefreshListView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:ptr="http://schemas.android.com/apk/res-auto"
android...
分类:
移动开发 时间:
2015-07-12 23:23:05
阅读次数:
252
/* LList.cpp* Author: Qiang Xiao* Time: 2015-07-12*/#includeusing namespace std;class Node{ public: int data; Node* ptr; Node(int...
分类:
编程语言 时间:
2015-07-12 18:54:06
阅读次数:
212