转自http://blog.csdn.net/szchtx/article/details/12000867# 在C++中,类的对象建立分为两种,一种是静态建立,如A a;另一种是动态建立,如A* ptr=new A;这两种方式是有区别的。 静态建立一个类对象,是由编译器为对象在栈空间中分...
分类:
其他好文 时间:
2015-09-10 17:26:28
阅读次数:
115
智能指针在C++11的标准中已经存在了,分别是unique_ptr,shared_ptr,weak_ptr,其中最常用的应该是share_ptr,它采用引用计数的方式管理内存,当引用计数为0的时候,自动释放内存,但是由于shared_ptr考虑到了线程安全,所以会存在有较大的性能损失。所以在实时游戏...
分类:
Web程序 时间:
2015-09-09 21:21:26
阅读次数:
161
代码: #include <memory> #include <iostream> int main(int argc, char*argv[]){ ? ? std::shared_ptr<int> a(new int(1)); ? ? std::weak_ptr<int>d(a); ? ? std::cout<<"d.use_count() = "<<d.use_cou...
分类:
其他好文 时间:
2015-09-09 19:53:59
阅读次数:
211
int a[5]={1,2,3,4,5}; int b[100]; 一个数组名代表的是数组中第一个元素的位置,通过数组名我们可以访问数组,先看下面两个问题 问题一:看到一篇文章这么写的。。int array[10];int (*ptr)[10];ptr=&array;//这里说明&array是指向数...
分类:
编程语言 时间:
2015-09-06 23:09:20
阅读次数:
472
1、指针的类型和指针所指向的类型如定义一个指针 int *ptr, 指针ptr的类型是int*,而指针所指向的类型是int。例1:int *p; //指针p类型是int*int a;char b;p=&a; //指针p指向类型是int,a为int型,该语句可使p指向a*p=10; //即使得a=.....
分类:
编程语言 时间:
2015-09-05 16:13:17
阅读次数:
147
C++ delete 和 delete []简单结论: new delete new [] delete []文章 :对 delete [] 的声明 void operator delete[] (void* ptr) throw (); void operator delete[] (void*....
分类:
编程语言 时间:
2015-09-04 07:32:25
阅读次数:
228
#include<iostream>usingnamespacestd;classString{public: char*GetChar() { return_ptr; } voidswap(String&s) { char*tmp=s._ptr; s._ptr=_ptr; _ptr=tmp; } String(char*str) :_ptr(newchar[strlen(str)+1]) { strcpy(_ptr,str); } String(constString&..
分类:
其他好文 时间:
2015-08-29 17:07:16
阅读次数:
131
1.?auto_ptr? auto_ptr 类可以用于管理由 new 分配的单个对象,但是无法管理动态分配的数组(我们通常不会使用数组,而是使用 vector 代替数组)。auto_ptr 在拷贝和赋值的时候有不寻常的行为,因此 auto_ptrs ...
分类:
其他好文 时间:
2015-08-28 13:42:07
阅读次数:
207
Item 14: Think carefully about copying behavior in resource-managing classes.
在Item 13:使用对象来管理资源中提出了基于RAII的资源管理对象,auto_ptr和shared_ptr。
智能指针可以有不同的拷贝策略。当你实现这样一个资源管理对象时,需要特别注意。比如一个典型的RAII风格的互斥锁实现:...
分类:
编程语言 时间:
2015-08-27 11:14:40
阅读次数:
205
C++没有提供垃圾回收机制,C++11提供的智能指针能够在一定程度上解决C++内存泄漏的问题。C++11提供了共享智能指针(shared_ptr),独占智能指针(unique_ptr),弱引用指针指针(weak_ptr),使用时需要引用智能指针本质上存储动态分配(堆)对象的指正的模板类,用于对堆对象...
分类:
编程语言 时间:
2015-08-26 15:20:36
阅读次数:
338