小念子

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 :: 管理 ::

随笔分类 -  编程语言

摘要:先声明,这是从一个前辈那里复制过来的,因为找不到转载的那些操作,所以只有复制了,不过我选择性复制,后面太复杂的就没管了,网址是原版本:http://blog.csdn.net/zhanghefu/article/details/50034071.分配方式 在C++中,内存分成5个区,他们分别是堆、栈、自由存储区、全局/静态存储区和常量存储区。 1)栈,在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。 2)堆,就是那些由new分配的内存块,他们的释放编译器不去管,由我们的应... 阅读全文
posted @ 2014-03-21 16:28 小念子 阅读(479) 评论(0) 推荐(1)

摘要:string s,表示s是一个string类的对象,有自己的成员变量和成员函数为了和上一篇的结尾呼应,先说明string类对象的sizeof的结果:string s = “ahdskahlal”;sizeof(s) = 32(x86)或者64(x64);下面介绍和string类相关的函数http://www.cppblog.com/lmlf001/archive/2006/04/19/5883.html这篇文章介绍的很全,下面贴一些代码加深印象(其实这是百度的总结在一起了)#include #include #include using namespace std;int main(){ .. 阅读全文
posted @ 2014-03-20 21:45 小念子 阅读(4011) 评论(0) 推荐(1)

摘要:char*p,表示p是指向字符串的指针char arr[],表示arr是一个字符串数组string s,表示s是一个string类的对象,有自己的成员变量和成员函数,和前两者的区别较大,在下一篇博文中详细讨论通过下面的例子来看char*与char[]的区别:例子1:对比下面两个函数:char* get_str1(){ char str[] = {"abcd"}; return str;}char* get_str2(){ char *str = {"abcd"}; return str;}可以发现,函数get_str1编译时有警告信息:(warning 阅读全文
posted @ 2014-03-18 21:58 小念子 阅读(15593) 评论(0) 推荐(0)