详解C++动态内存管理
1.c的动态内存管理c语言的动态内存管理使用的函数为malloc/calloc/realloc/free1.1 malloc/calloc/realloc12345678910voidTest (){int* p1 (int*)malloc(sizeof(int));free(p1);// 1.malloc/calloc/realloc的区别是什么int* p2 (int*)calloc(4,sizeof(int));int* p3 (int*)realloc(p2,sizeof(int)*10);// 这里需要free(p2)吗free(p3 );}malloc 和 calloc 都是动态内存申请函数不同点是malloc 和calloc 的参数不同前者是申请的字节大小后者为一个类型的大小和个数malloc 不初始化calloc 初始化malloc 为内存分配一块calloc 分配n快realloc是用来扩容的函数就是你malloc或calloc空间不够的时候使用realloc来增加空间的。注意realloc扩容方式有两种第一种就是malloc之后后边的内存依然足够扩容那么realloc就在之前空间的后面扩容如果不够则再找一块内存空间将之前的数据拷贝到realloc里面再扩容。2.C动态内存管理C语言内存管理方式在C中可以继续使用但有些地方就无能为力而且使用起来比较麻烦因此C又提出了自己的内存管理方式通过new和delete操作符进行动态内存管理。2.1 new/delete操作内置类型123456789101112131415161718192021intmain(){//text1();int* a1 newint;//不初始化cout *a1 endl;deletea1;int* a2 newint(1);//初始化为1cout *a2 endl;deletea2;int* a3 newint[3]{1,2,3};//多次开辟初始化inti 0;for(i0;i3;i){cout a3[i] endl;}delete[] a3;return0;}注意开辟一个元素delete不用加[],开辟多个元素delete一定要加[],不然会导致出现bug。2.2 new/delete操作自定义类型1234567891011121314151617181920212223242526272829classsss{public:sss(inta0,intb0):_a(a),_b(b){;}~sss(){_a 0;_b 0;}private:int_a;int_b;};intmain(){//使用newsss* s1 newsss[2]{ {1,1},{2,2} };delete[] s1;//使用mallocsss* s2 (sss*)malloc(sizeof(sss)*2);free(s2);return0;}注意new/delete 和 malloc/free最大区别是 new/delete对于【自定义类型】除了开空间还会调用构造函数和析构函数。且malloc不能初始化new可以初始化这是两者最大的区别。2.3 new底层原理new和delete是用户进行动态内存申请和释放的操作符operator new 和operator delete是系统提供的全局函数new在底层调用operator new全局函数来申请空间delete在底层通过operator delete全局函数来释放空间。底层代码12345678910111213141516171819202122232425/*operator delete: 该函数最终是通过free来释放空间的*/voidoperatordelete(void* pUserData){_CrtMemBlockHeader* pHead;RTCCALLBACK(_RTC_Free_hook, (pUserData, 0));if(pUserData NULL)return;_mlock(_HEAP_LOCK);/* block other threads */__TRY/* get a pointer to memory block header */pHead pHdr(pUserData);/* verify block type */_ASSERTE(_BLOCK_TYPE_IS_VALID(pHead-nBlockUse));_free_dbg(pUserData, pHead-nBlockUse);__FINALLY_munlock(_HEAP_LOCK);/* release other threads */__END_TRY_FINALLYreturn;}/*free的实现*/#define free(p) _free_dbg(p, _NORMAL_BLOCK)通过上述两个全局函数的实现知道operator new 实际也是通过malloc来申请空间如果malloc申请空间成功就直接返回否则执行用户提供的空间不足应对措施如果用户提供该措施就继续申请否则就抛异常。operator delete 最终是通过free来释放空间的。2.4 new 和 delete实现原理内置类型和malloc基本一样不会有太大差别。不同的地方是new/delete申请和释放的是单个元素的空间new[]和delete[]申请的是连续空间而且new在申请空间失败时会抛异常malloc会返回NULL。自定义类型会调用构造函数和析构函数malloc不会调用。3.malloc/free和new/delete的区别malloc/free和new/delete的共同点是都是从堆上申请空间并且需要用户手动释放。不同的地方是1. malloc和free是函数new和delete是操作符2. malloc申请的空间不会初始化new可以初始化3. malloc申请空间时需要手动计算空间大小并传递new只需在其后跟上空间的类型即可如果是多个对象[]中指定对象个数即可4. malloc的返回值为void*, 在使用时必须强转new不需要因为new后跟的是空间的类型5. malloc申请空间失败时返回的是NULL因此使用时必须判空new不需要但是new需要捕获异常6. 申请自定义类型对象时malloc/free只会开辟空间不会调用构造函数与析构函数而new在申请空间后会调用构造函数完成对象的初始化delete在释放空间前会调用析构函数完成空间中资源的清理。yip.vpntb.pro/39137.Docyip.vpntb.pro/93115.Docyip.vpntb.pro/57355.Docyip.vpntb.pro/35575.Docyip.vpntb.pro/79193.Docyip.vpntb.pro/19971.Docyip.vpntb.pro/71753.Docyip.vpntb.pro/35999.Docyip.vpntb.pro/38815.Docyip.vpntb.pro/11913.Docmec.vpntb.pro/53331.Docmec.vpntb.pro/57571.Docmec.vpntb.pro/35319.Docmec.vpntb.pro/93351.Docmec.vpntb.pro/39757.Docmec.vpntb.pro/55137.Docmec.vpntb.pro/31551.Docmec.vpntb.pro/35711.Docmec.vpntb.pro/91599.Docmec.vpntb.pro/53377.Docrep.vpntb.pro/91751.Docrep.vpntb.pro/31913.Docrep.vpntb.pro/51551.Docrep.vpntb.pro/11995.Docrep.vpntb.pro/35551.Docrep.vpntb.pro/13153.Docrep.vpntb.pro/99111.Docrep.vpntb.pro/33999.Docrep.vpntb.pro/19751.Docrep.vpntb.pro/91199.Docast.vpntb.pro/13339.Docast.vpntb.pro/17557.Docast.vpntb.pro/31317.Docast.vpntb.pro/95131.Docast.vpntb.pro/31137.Docast.vpntb.pro/79531.Docast.vpntb.pro/33755.Docast.vpntb.pro/51939.Docast.vpntb.pro/15597.Docast.vpntb.pro/35373.Docqhv.vpntb.pro/37711.Docqhv.vpntb.pro/93719.Docqhv.vpntb.pro/51951.Docqhv.vpntb.pro/93717.Docqhv.vpntb.pro/35597.Docqhv.vpntb.pro/97797.Docqhv.vpntb.pro/15777.Docqhv.vpntb.pro/33179.Docqhv.vpntb.pro/88226.Docqhv.vpntb.pro/44080.Dochok.vpntb.pro/66262.Dochok.vpntb.pro/08880.Dochok.vpntb.pro/46024.Dochok.vpntb.pro/22228.Dochok.vpntb.pro/11915.Dochok.vpntb.pro/95731.Dochok.vpntb.pro/35519.Dochok.vpntb.pro/33933.Dochok.vpntb.pro/57997.Dochok.vpntb.pro/93153.Docpdk.vpntb.pro/08664.Docpdk.vpntb.pro/60400.Docpdk.vpntb.pro/75131.Docpdk.vpntb.pro/06806.Docpdk.vpntb.pro/33137.Docpdk.vpntb.pro/84408.Docpdk.vpntb.pro/66866.Docpdk.vpntb.pro/82242.Docpdk.vpntb.pro/19513.Docpdk.vpntb.pro/31977.Doccxa.vpntb.pro/53751.Doccxa.vpntb.pro/37757.Doccxa.vpntb.pro/75353.Doccxa.vpntb.pro/11753.Doccxa.vpntb.pro/57153.Doccxa.vpntb.pro/13151.Doccxa.vpntb.pro/99593.Doccxa.vpntb.pro/00460.Doccxa.vpntb.pro/28480.Doccxa.vpntb.pro/48844.Docbjg.vpntb.pro/62626.Docbjg.vpntb.pro/46460.Docbjg.vpntb.pro/22264.Docbjg.vpntb.pro/40684.Docbjg.vpntb.pro/02622.Docbjg.vpntb.pro/28246.Docbjg.vpntb.pro/20660.Docbjg.vpntb.pro/02266.Docbjg.vpntb.pro/04460.Docbjg.vpntb.pro/68440.Docqts.vpntb.pro/20422.Docqts.vpntb.pro/62280.Docqts.vpntb.pro/82408.Docqts.vpntb.pro/57391.Docqts.vpntb.pro/24868.Docqts.vpntb.pro/22868.Docqts.vpntb.pro/00082.Docqts.vpntb.pro/86802.Docqts.vpntb.pro/66680.Docqts.vpntb.pro/62846.Docsrt.vpntb.pro/64882.Docsrt.vpntb.pro/06466.Docsrt.vpntb.pro/24084.Docsrt.vpntb.pro/28006.Docsrt.vpntb.pro/28824.Docsrt.vpntb.pro/48062.Docsrt.vpntb.pro/82246.Docsrt.vpntb.pro/99331.Docsrt.vpntb.pro/79315.Docsrt.vpntb.pro/73553.Doccgh.vpntb.pro/37533.Doccgh.vpntb.pro/46086.Doccgh.vpntb.pro/44646.Doccgh.vpntb.pro/44022.Doccgh.vpntb.pro/08822.Doccgh.vpntb.pro/20820.Doccgh.vpntb.pro/06848.Doccgh.vpntb.pro/17199.Doccgh.vpntb.pro/91917.Doccgh.vpntb.pro/37515.Dochv.vpntb.pro/93913.Dochv.vpntb.pro/99797.Dochv.vpntb.pro/95379.Dochv.vpntb.pro/95753.Dochv.vpntb.pro/57351.Dochv.vpntb.pro/33977.Dochv.vpntb.pro/75997.Dochv.vpntb.pro/57319.Dochv.vpntb.pro/35355.Dochv.vpntb.pro/77975.Docyid.vpntb.pro/95353.Docyid.vpntb.pro/11519.Docyid.vpntb.pro/53735.Docyid.vpntb.pro/79197.Docyid.vpntb.pro/71593.Docyid.vpntb.pro/97577.Docyid.vpntb.pro/57395.Docyid.vpntb.pro/99337.Docyid.vpntb.pro/33957.Docyid.vpntb.pro/91575.Doctrm.vpntb.pro/71593.Doctrm.vpntb.pro/93373.Doctrm.vpntb.pro/79939.Doctrm.vpntb.pro/35373.Doctrm.vpntb.pro/55351.Doctrm.vpntb.pro/11115.Doctrm.vpntb.pro/31931.Doctrm.vpntb.pro/17573.Doctrm.vpntb.pro/75555.Doctrm.vpntb.pro/19711.Docnbi.vpntb.pro/35519.Docnbi.vpntb.pro/97559.Docnbi.vpntb.pro/35377.Docnbi.vpntb.pro/71131.Docnbi.vpntb.pro/33993.Docnbi.vpntb.pro/11197.Docnbi.vpntb.pro/93157.Docnbi.vpntb.pro/99599.Docnbi.vpntb.pro/33955.Docnbi.vpntb.pro/73179.Doctde.vpntb.pro/37795.Doctde.vpntb.pro/75513.Doctde.vpntb.pro/57535.Doctde.vpntb.pro/55951.Doctde.vpntb.pro/77913.Doctde.vpntb.pro/93779.Doctde.vpntb.pro/73577.Doctde.vpntb.pro/57771.Doctde.vpntb.pro/79379.Doctde.vpntb.pro/93379.Docigk.vpntb.pro/79331.Docigk.vpntb.pro/79137.Docigk.vpntb.pro/33113.Docigk.vpntb.pro/91551.Docigk.vpntb.pro/93395.Docigk.vpntb.pro/77999.Docigk.vpntb.pro/99991.Docigk.vpntb.pro/73539.Docigk.vpntb.pro/17197.Docigk.vpntb.pro/39515.Docrfx.vpntb.pro/17931.Docrfx.vpntb.pro/99999.Docrfx.vpntb.pro/19991.Docrfx.vpntb.pro/39797.Docrfx.vpntb.pro/51515.Docrfx.vpntb.pro/79179.Docrfx.vpntb.pro/99915.Docrfx.vpntb.pro/33937.Docrfx.vpntb.pro/53151.Docrfx.vpntb.pro/11799.Dociep.vpntb.pro/57573.Dociep.vpntb.pro/35595.Dociep.vpntb.pro/73917.Dociep.vpntb.pro/19913.Dociep.vpntb.pro/75579.Dociep.vpntb.pro/33513.Dociep.vpntb.pro/13331.Dociep.vpntb.pro/53753.Dociep.vpntb.pro/33379.Dociep.vpntb.pro/53917.Docgcl.vpntb.pro/39571.Docgcl.vpntb.pro/71531.Docgcl.vpntb.pro/99777.Docgcl.vpntb.pro/95373.Docgcl.vpntb.pro/33319.Docgcl.vpntb.pro/99711.Docgcl.vpntb.pro/59131.Docgcl.vpntb.pro/33333.Docgcl.vpntb.pro/75713.Docgcl.vpntb.pro/99757.Docfbg.vpntb.pro/73157.Docfbg.vpntb.pro/93397.Docfbg.vpntb.pro/95117.Docfbg.vpntb.pro/31751.Docfbg.vpntb.pro/35973.Docfbg.vpntb.pro/15375.Docfbg.vpntb.pro/33935.Docfbg.vpntb.pro/31155.Docfbg.vpntb.pro/11599.Docfbg.vpntb.pro/75937.Doczwp.vpntb.pro/13537.Doczwp.vpntb.pro/77119.Doczwp.vpntb.pro/17551.Doczwp.vpntb.pro/77515.Doczwp.vpntb.pro/35557.Doczwp.vpntb.pro/11791.Doczwp.vpntb.pro/59577.Doczwp.vpntb.pro/35771.Doczwp.vpntb.pro/77537.Doczwp.vpntb.pro/75711.Docejb.vpntb.pro/79937.Docejb.vpntb.pro/15751.Docejb.vpntb.pro/39571.Docejb.vpntb.pro/57579.Docejb.vpntb.pro/99971.Docejb.vpntb.pro/13935.Docejb.vpntb.pro/17997.Docejb.vpntb.pro/79519.Docejb.vpntb.pro/93317.Docejb.vpntb.pro/77311.Docgtf.vpntb.pro/13575.Docgtf.vpntb.pro/13355.Docgtf.vpntb.pro/73177.Docgtf.vpntb.pro/35519.Docgtf.vpntb.pro/39931.Docgtf.vpntb.pro/77759.Docgtf.vpntb.pro/95759.Docgtf.vpntb.pro/39775.Docgtf.vpntb.pro/53733.Docgtf.vpntb.pro/17375.Docgrk.vpntb.pro/13717.Docgrk.vpntb.pro/59591.Docgrk.vpntb.pro/71991.Docgrk.vpntb.pro/37117.Docgrk.vpntb.pro/59333.Docgrk.vpntb.pro/95393.Docgrk.vpntb.pro/35931.Docgrk.vpntb.pro/97313.Docgrk.vpntb.pro/97519.Docgrk.vpntb.pro/17577.Docesl.vpntb.pro/77179.Docesl.vpntb.pro/97191.Docesl.vpntb.pro/77939.Docesl.vpntb.pro/99199.Docesl.vpntb.pro/33571.Docesl.vpntb.pro/15995.Docesl.vpntb.pro/53533.Docesl.vpntb.pro/37199.Docesl.vpntb.pro/31915.Docesl.vpntb.pro/15353.Docctk.vpntb.pro/55517.Docctk.vpntb.pro/97797.Docctk.vpntb.pro/35731.Docctk.vpntb.pro/17715.Docctk.vpntb.pro/73319.Docctk.vpntb.pro/93333.Docctk.vpntb.pro/37511.Docctk.vpntb.pro/73199.Docctk.vpntb.pro/37719.Docctk.vpntb.pro/91117.Docmpl.vpntb.pro/35391.Docmpl.vpntb.pro/53595.Docmpl.vpntb.pro/51313.Docmpl.vpntb.pro/31339.Docmpl.vpntb.pro/37157.Docmpl.vpntb.pro/39553.Docmpl.vpntb.pro/57973.Docmpl.vpntb.pro/19973.Docmpl.vpntb.pro/91777.Docmpl.vpntb.pro/55793.Doclyh.vpntb.pro/17139.Doclyh.vpntb.pro/95191.Doclyh.vpntb.pro/35711.Doclyh.vpntb.pro/15571.Doclyh.vpntb.pro/55951.Doclyh.vpntb.pro/95595.Doclyh.vpntb.pro/99593.Doclyh.vpntb.pro/99953.Doclyh.vpntb.pro/79119.Doclyh.vpntb.pro/97355.Docdhk.vpntb.pro/51751.Docdhk.vpntb.pro/53197.Docdhk.vpntb.pro/75717.Docdhk.vpntb.pro/51357.Docdhk.vpntb.pro/71753.Docdhk.vpntb.pro/55393.Docdhk.vpntb.pro/57155.Docdhk.vpntb.pro/97151.Docdhk.vpntb.pro/99979.Docdhk.vpntb.pro/19737.Dockii.vpntb.pro/51953.Dockii.vpntb.pro/91579.Dockii.vpntb.pro/97733.Dockii.vpntb.pro/17733.Dockii.vpntb.pro/51537.Dockii.vpntb.pro/19953.Dockii.vpntb.pro/51731.Dockii.vpntb.pro/39997.Dockii.vpntb.pro/71973.Dockii.vpntb.pro/13331.Docucr.vpntb.pro/57719.Docucr.vpntb.pro/57577.Docucr.vpntb.pro/39971.Docucr.vpntb.pro/93113.Docucr.vpntb.pro/31957.Docucr.vpntb.pro/55739.Docucr.vpntb.pro/97739.Docucr.vpntb.pro/97759.Docucr.vpntb.pro/35177.Docucr.vpntb.pro/91113.Docfwb.vpntb.pro/17739.Docfwb.vpntb.pro/13575.Docfwb.vpntb.pro/71333.Docfwb.vpntb.pro/97735.Docfwb.vpntb.pro/91353.Docfwb.vpntb.pro/31551.Docfwb.vpntb.pro/93317.Docfwb.vpntb.pro/11577.Docfwb.vpntb.pro/55735.Docfwb.vpntb.pro/51391.Docxdc.vpntb.pro/35395.Docxdc.vpntb.pro/19357.Docxdc.vpntb.pro/73913.Docxdc.vpntb.pro/75935.Docxdc.vpntb.pro/95155.Docxdc.vpntb.pro/75397.Docxdc.vpntb.pro/71519.Docxdc.vpntb.pro/99191.Docxdc.vpntb.pro/73779.Docxdc.vpntb.pro/77159.Doccs.vpntb.pro/77371.Doccs.vpntb.pro/17915.Doccs.vpntb.pro/33131.Doccs.vpntb.pro/19311.Doccs.vpntb.pro/93919.Doccs.vpntb.pro/51919.Doccs.vpntb.pro/99937.Doccs.vpntb.pro/97517.Doccs.vpntb.pro/75355.Doccs.vpntb.pro/79593.Docvzg.vpntb.pro/39595.Docvzg.vpntb.pro/93931.Docvzg.vpntb.pro/17393.Docvzg.vpntb.pro/77973.Docvzg.vpntb.pro/53151.Docvzg.vpntb.pro/73753.Docvzg.vpntb.pro/91337.Docvzg.vpntb.pro/51339.Docvzg.vpntb.pro/73175.Docvzg.vpntb.pro/59997.Docwif.vpntb.pro/97719.Docwif.vpntb.pro/13397.Docwif.vpntb.pro/91511.Docwif.vpntb.pro/39511.Docwif.vpntb.pro/99397.Docwif.vpntb.pro/99555.Docwif.vpntb.pro/13531.Docwif.vpntb.pro/57197.Docwif.vpntb.pro/55775.Docwif.vpntb.pro/91597.Docyfk.vpntb.pro/71997.Docyfk.vpntb.pro/77793.Docyfk.vpntb.pro/95937.Docyfk.vpntb.pro/39195.Docyfk.vpntb.pro/77371.Docyfk.vpntb.pro/39575.Docyfk.vpntb.pro/53531.Docyfk.vpntb.pro/37973.Docyfk.vpntb.pro/35939.Docyfk.vpntb.pro/75911.Docfge.vpntb.pro/15171.Docfge.vpntb.pro/97579.Docfge.vpntb.pro/15573.Docfge.vpntb.pro/53171.Docfge.vpntb.pro/75517.Docfge.vpntb.pro/77955.Docfge.vpntb.pro/73711.Docfge.vpntb.pro/75113.Docfge.vpntb.pro/37537.Docfge.vpntb.pro/95199.Docqpg.vpntb.pro/15517.Docqpg.vpntb.pro/91533.Docqpg.vpntb.pro/73199.Docqpg.vpntb.pro/77971.Docqpg.vpntb.pro/91953.Docqpg.vpntb.pro/55315.Docqpg.vpntb.pro/13395.Docqpg.vpntb.pro/59179.Docqpg.vpntb.pro/91715.Docqpg.vpntb.pro/31973.Docyan.vpntb.pro/13571.Docyan.vpntb.pro/71919.Docyan.vpntb.pro/93577.Docyan.vpntb.pro/91719.Docyan.vpntb.pro/15555.Docyan.vpntb.pro/97755.Docyan.vpntb.pro/33379.Docyan.vpntb.pro/53111.Docyan.vpntb.pro/71371.Docyan.vpntb.pro/11335.Docjes.vpntb.pro/31775.Docjes.vpntb.pro/97513.Docjes.vpntb.pro/57551.Docjes.vpntb.pro/53399.Docjes.vpntb.pro/75771.Docjes.vpntb.pro/97593.Docjes.vpntb.pro/13193.Docjes.vpntb.pro/79735.Docjes.vpntb.pro/11131.Docjes.vpntb.pro/57551.Dockaj.vpntb.pro/73571.Dockaj.vpntb.pro/19917.Dockaj.vpntb.pro/95315.Dockaj.vpntb.pro/39975.Dockaj.vpntb.pro/91711.Dockaj.vpntb.pro/31771.Dockaj.vpntb.pro/73777.Dockaj.vpntb.pro/19913.Dockaj.vpntb.pro/13971.Dockaj.vpntb.pro/35193.Docnvj.vpntb.pro/77395.Docnvj.vpntb.pro/31995.Docnvj.vpntb.pro/33511.Docnvj.vpntb.pro/33979.Docnvj.vpntb.pro/19799.Docnvj.vpntb.pro/59739.Docnvj.vpntb.pro/75797.Docnvj.vpntb.pro/37599.Docnvj.vpntb.pro/13115.Docnvj.vpntb.pro/59353.Docdfd.vpntb.pro/53513.Docdfd.vpntb.pro/71591.Docdfd.vpntb.pro/15579.Docdfd.vpntb.pro/93775.Docdfd.vpntb.pro/35179.Docdfd.vpntb.pro/93539.Docdfd.vpntb.pro/93559.Docdfd.vpntb.pro/17773.Docdfd.vpntb.pro/15373.Docdfd.vpntb.pro/15993.Docqiu.vpntb.pro/55155.Docqiu.vpntb.pro/51793.Docqiu.vpntb.pro/35591.Docqiu.vpntb.pro/73191.Docqiu.vpntb.pro/71573.Docqiu.vpntb.pro/59959.Docqiu.vpntb.pro/19959.Docqiu.vpntb.pro/77193.Docqiu.vpntb.pro/57713.Docqiu.vpntb.pro/75959.Docvff.vpntb.pro/39957.Docvff.vpntb.pro/99559.Docvff.vpntb.pro/97773.Docvff.vpntb.pro/75379.Docvff.vpntb.pro/59193.Docvff.vpntb.pro/39715.Docvff.vpntb.pro/93139.Docvff.vpntb.pro/55737.Docvff.vpntb.pro/13773.Docvff.vpntb.pro/55935.Docjjt.vpntb.pro/75737.Docjjt.vpntb.pro/73335.Docjjt.vpntb.pro/17759.Docjjt.vpntb.pro/39377.Docjjt.vpntb.pro/51135.Docjjt.vpntb.pro/73195.Docjjt.vpntb.pro/59353.Docjjt.vpntb.pro/99137.Docjjt.vpntb.pro/57175.Docjjt.vpntb.pro/73939.Docgsr.vpntb.pro/33777.Docgsr.vpntb.pro/93579.Docgsr.vpntb.pro/13551.Docgsr.vpntb.pro/19997.Docgsr.vpntb.pro/55799.Docgsr.vpntb.pro/59999.Docgsr.vpntb.pro/79939.Docgsr.vpntb.pro/13157.Docgsr.vpntb.pro/71971.Docgsr.vpntb.pro/79773.Docktp.vpntb.pro/53913.Docktp.vpntb.pro/75559.Docktp.vpntb.pro/99331.Docktp.vpntb.pro/57753.Docktp.vpntb.pro/77333.Docktp.vpntb.pro/17351.Docktp.vpntb.pro/93755.Docktp.vpntb.pro/71955.Docktp.vpntb.pro/99773.Docktp.vpntb.pro/75537.Docvmt.vpntb.pro/17579.Docvmt.vpntb.pro/15333.Docvmt.vpntb.pro/91117.Docvmt.vpntb.pro/59171.Docvmt.vpntb.pro/15717.Docvmt.vpntb.pro/51377.Docvmt.vpntb.pro/91379.Docvmt.vpntb.pro/13953.Docvmt.vpntb.pro/97713.Docvmt.vpntb.pro/55513.Docsys.vpntb.pro/31953.Docsys.vpntb.pro/31339.Docsys.vpntb.pro/13579.Docsys.vpntb.pro/31735.Docsys.vpntb.pro/31775.Docsys.vpntb.pro/37953.Docsys.vpntb.pro/79593.Docsys.vpntb.pro/91319.Docsys.vpntb.pro/13793.Docsys.vpntb.pro/53935.Docdpb.vpntb.pro/31555.Docdpb.vpntb.pro/39597.Docdpb.vpntb.pro/33957.Docdpb.vpntb.pro/51759.Docdpb.vpntb.pro/99799.Docdpb.vpntb.pro/71771.Docdpb.vpntb.pro/79179.Docdpb.vpntb.pro/17133.Docdpb.vpntb.pro/97755.Docdpb.vpntb.pro/75155.Docjtr.vpntb.pro/37935.Docjtr.vpntb.pro/77319.Docjtr.vpntb.pro/99391.Docjtr.vpntb.pro/53593.Docjtr.vpntb.pro/17991.Docjtr.vpntb.pro/17733.Docjtr.vpntb.pro/79713.Docjtr.vpntb.pro/15935.Docjtr.vpntb.pro/77577.Docjtr.vpntb.pro/11315.Docsty.vpntb.pro/37737.Docsty.vpntb.pro/53571.Docsty.vpntb.pro/37157.Docsty.vpntb.pro/15595.Docsty.vpntb.pro/51711.Docsty.vpntb.pro/11511.Docsty.vpntb.pro/51919.Docsty.vpntb.pro/77139.Docsty.vpntb.pro/39737.Docsty.vpntb.pro/19599.Doctbt.vpntb.pro/73195.Doctbt.vpntb.pro/11335.Doctbt.vpntb.pro/59797.Doctbt.vpntb.pro/37319.Doctbt.vpntb.pro/51559.Doctbt.vpntb.pro/73933.Doctbt.vpntb.pro/77377.Doctbt.vpntb.pro/75137.Doctbt.vpntb.pro/31339.Doctbt.vpntb.pro/19333.Docfxd.vpntb.pro/73997.Docfxd.vpntb.pro/53551.Docfxd.vpntb.pro/71715.Docfxd.vpntb.pro/19759.Docfxd.vpntb.pro/95353.Docfxd.vpntb.pro/95999.Docfxd.vpntb.pro/39757.Docfxd.vpntb.pro/35797.Docfxd.vpntb.pro/39717.Docfxd.vpntb.pro/35715.Docidb.vpntb.pro/33191.Docidb.vpntb.pro/55391.Docidb.vpntb.pro/79953.Docidb.vpntb.pro/71179.Docidb.vpntb.pro/53511.Docidb.vpntb.pro/39331.Docidb.vpntb.pro/51775.Docidb.vpntb.pro/35759.Docidb.vpntb.pro/91773.Docidb.vpntb.pro/15131.Docsol.vpntb.pro/99111.Docsol.vpntb.pro/39731.Docsol.vpntb.pro/13339.Docsol.vpntb.pro/59119.Docsol.vpntb.pro/19973.Docsol.vpntb.pro/33553.Docsol.vpntb.pro/77515.Docsol.vpntb.pro/59773.Docsol.vpntb.pro/99951.Docsol.vpntb.pro/99573.Docfou.vpntb.pro/97757.Docfou.vpntb.pro/39557.Docfou.vpntb.pro/59375.Docfou.vpntb.pro/73991.Docfou.vpntb.pro/91177.Docfou.vpntb.pro/55739.Docfou.vpntb.pro/97997.Docfou.vpntb.pro/13979.Docfou.vpntb.pro/51591.Docfou.vpntb.pro/71797.Docyaw.vpntb.pro/71391.Docyaw.vpntb.pro/37759.Docyaw.vpntb.pro/37337.Docyaw.vpntb.pro/71577.Docyaw.vpntb.pro/17379.Docyaw.vpntb.pro/19753.Docyaw.vpntb.pro/17719.Docyaw.vpntb.pro/39513.Docyaw.vpntb.pro/59539.Docyaw.vpntb.pro/15935.Docfuj.vpntb.pro/19195.Docfuj.vpntb.pro/99591.Docfuj.vpntb.pro/75937.Docfuj.vpntb.pro/13379.Docfuj.vpntb.pro/91713.Docfuj.vpntb.pro/15775.Docfuj.vpntb.pro/73579.Docfuj.vpntb.pro/39173.Docfuj.vpntb.pro/71911.Docfuj.vpntb.pro/97175.Docwlm.vpntb.pro/53577.Docwlm.vpntb.pro/73331.Docwlm.vpntb.pro/77313.Docwlm.vpntb.pro/99557.Docwlm.vpntb.pro/95353.Docwlm.vpntb.pro/91975.Docwlm.vpntb.pro/17971.Docwlm.vpntb.pro/57939.Docwlm.vpntb.pro/95977.Docwlm.vpntb.pro/15531.Docdvy.vpntb.pro/35531.Docdvy.vpntb.pro/55117.Docdvy.vpntb.pro/33979.Docdvy.vpntb.pro/39197.Docdvy.vpntb.pro/37315.Docdvy.vpntb.pro/11119.Docdvy.vpntb.pro/79193.Docdvy.vpntb.pro/35935.Docdvy.vpntb.pro/97753.Docdvy.vpntb.pro/19117.Docoss.vpntb.pro/77979.Docoss.vpntb.pro/77931.Docoss.vpntb.pro/11579.Docoss.vpntb.pro/95195.Docoss.vpntb.pro/95911.Docoss.vpntb.pro/13539.Docoss.vpntb.pro/55193.Docoss.vpntb.pro/37533.Docoss.vpntb.pro/57357.Docoss.vpntb.pro/19555.Dockaa.vpntb.pro/59595.Dockaa.vpntb.pro/37917.Dockaa.vpntb.pro/95797.Dockaa.vpntb.pro/37391.Dockaa.vpntb.pro/31973.Dockaa.vpntb.pro/59773.Dockaa.vpntb.pro/17373.Dockaa.vpntb.pro/37139.Dockaa.vpntb.pro/93731.Dockaa.vpntb.pro/51975.Docdax.vpntb.pro/97779.Docdax.vpntb.pro/97739.Docdax.vpntb.pro/91771.Docdax.vpntb.pro/53173.Docdax.vpntb.pro/11315.Docdax.vpntb.pro/57135.Docdax.vpntb.pro/35155.Docdax.vpntb.pro/15357.Docdax.vpntb.pro/35519.Docdax.vpntb.pro/33717.Docqbe.vpntb.pro/97335.Docqbe.vpntb.pro/35755.Docqbe.vpntb.pro/31971.Docqbe.vpntb.pro/15113.Docqbe.vpntb.pro/35557.Docqbe.vpntb.pro/55993.Docqbe.vpntb.pro/17591.Docqbe.vpntb.pro/77977.Docqbe.vpntb.pro/13397.Docqbe.vpntb.pro/75933.Doczit.vpntb.pro/93177.Doczit.vpntb.pro/97517.Doczit.vpntb.pro/97577.Doczit.vpntb.pro/37319.Doczit.vpntb.pro/93759.Doczit.vpntb.pro/15919.Doczit.vpntb.pro/57711.Doczit.vpntb.pro/17571.Doczit.vpntb.pro/37375.Doczit.vpntb.pro/77155.Docnlc.vpntb.pro/73953.Docnlc.vpntb.pro/37595.Docnlc.vpntb.pro/31579.Docnlc.vpntb.pro/33719.Docnlc.vpntb.pro/71711.Docnlc.vpntb.pro/17957.Docnlc.vpntb.pro/97177.Docnlc.vpntb.pro/93733.Docnlc.vpntb.pro/53517.Docnlc.vpntb.pro/79719.Docmis.vpntb.pro/73997.Docmis.vpntb.pro/15117.Docmis.vpntb.pro/57771.Docmis.vpntb.pro/73195.Docmis.vpntb.pro/51331.Docmis.vpntb.pro/33719.Docmis.vpntb.pro/17733.Docmis.vpntb.pro/37379.Docmis.vpntb.pro/99713.Docmis.vpntb.pro/15557.Docwm.vpntb.pro/11531.Docwm.vpntb.pro/13131.Docwm.vpntb.pro/33573.Docwm.vpntb.pro/99595.Docwm.vpntb.pro/13957.Docwm.vpntb.pro/93173.Docwm.vpntb.pro/39951.Docwm.vpntb.pro/55973.Docwm.vpntb.pro/31597.Docwm.vpntb.pro/51737.Docilf.vpntb.pro/13773.Docilf.vpntb.pro/33179.Docilf.vpntb.pro/91757.Docilf.vpntb.pro/57733.Docilf.vpntb.pro/51391.Docilf.vpntb.pro/39993.Docilf.vpntb.pro/59135.Docilf.vpntb.pro/91733.Docilf.vpntb.pro/99957.Docilf.vpntb.pro/35915.Docgcz.vpntb.pro/17351.Docgcz.vpntb.pro/71931.Docgcz.vpntb.pro/59779.Docgcz.vpntb.pro/33393.Docgcz.vpntb.pro/75197.Docgcz.vpntb.pro/95139.Docgcz.vpntb.pro/99315.Docgcz.vpntb.pro/93553.Docgcz.vpntb.pro/75331.Docgcz.vpntb.pro/33151.Docwcj.vpntb.pro/93535.Docwcj.vpntb.pro/35593.Docwcj.vpntb.pro/91355.Docwcj.vpntb.pro/97135.Docwcj.vpntb.pro/51995.Docwcj.vpntb.pro/75715.Docwcj.vpntb.pro/95195.Docwcj.vpntb.pro/97595.Docwcj.vpntb.pro/15317.Docwcj.vpntb.pro/33191.Docscc.vpntb.pro/91557.Docscc.vpntb.pro/51715.Docscc.vpntb.pro/57159.Docscc.vpntb.pro/77719.Docscc.vpntb.pro/33515.Docscc.vpntb.pro/51535.Docscc.vpntb.pro/15355.Docscc.vpntb.pro/59135.Docscc.vpntb.pro/57319.Docscc.vpntb.pro/53571.Docad.vpntb.pro/99575.Docad.vpntb.pro/73157.Docad.vpntb.pro/91553.Docad.vpntb.pro/57153.Docad.vpntb.pro/19113.Docad.vpntb.pro/91771.Docad.vpntb.pro/95719.Docad.vpntb.pro/15799.Docad.vpntb.pro/97579.Docad.vpntb.pro/17571.Dockul.vpntb.pro/33537.Dockul.vpntb.pro/13735.Dockul.vpntb.pro/55393.Dockul.vpntb.pro/95977.Dockul.vpntb.pro/79933.Dockul.vpntb.pro/93331.Dockul.vpntb.pro/91937.Dockul.vpntb.pro/13913.Dockul.vpntb.pro/79933.Dockul.vpntb.pro/11311.Docnci.vpntb.pro/71371.Docnci.vpntb.pro/37371.Docnci.vpntb.pro/11335.Docnci.vpntb.pro/39339.Docnci.vpntb.pro/95995.Docnci.vpntb.pro/95713.Docnci.vpntb.pro/77535.Docnci.vpntb.pro/57915.Docnci.vpntb.pro/75755.Docnci.vpntb.pro/93795.Docweg.vpntb.pro/55191.Docweg.vpntb.pro/17377.Docweg.vpntb.pro/59317.Docweg.vpntb.pro/13557.Docweg.vpntb.pro/95535.Docweg.vpntb.pro/51955.Docweg.vpntb.pro/79971.Docweg.vpntb.pro/77399.Docweg.vpntb.pro/17957.Docweg.vpntb.pro/39337.Doc