2022年11月23日
摘要: 阅读全文
posted @ 2022-11-23 15:26 小凉拖 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2022-11-23 15:25 小凉拖 阅读(8) 评论(0) 推荐(0) 编辑
  2022年11月22日
摘要: 裸指针即便使用了delete也有可能内存泄漏。智能指针则不会 下面的例子假定p->foo()抛出了异常就不会执行delete p从而造成内存泄漏。 值传递: 1 void pass_uo1(int value) 2 { 3 value = 9; 4 } 5 int main() 6 { 7 auto 阅读全文
posted @ 2022-11-22 14:37 小凉拖 阅读(18) 评论(0) 推荐(0) 编辑
摘要: 内存泄漏: 当指针p和变量y被释放掉,new所开辟的内存不会被释放,这就是内存泄漏。 shared_ptr: ***注意***use_count是share_ptr的方法,用来记录有多少个指针指向该内存,reset关键字表示重置使指针不再指向原来的对象(而该指针自动指向nullptr)对象被释放(所 阅读全文
posted @ 2022-11-22 14:21 小凉拖 阅读(309) 评论(0) 推荐(0) 编辑
  2022年11月21日
摘要: 空指针(指针变量指向内存编号为0的空间,内存空间为0~255是不可以被访问的) 1.初始化指针为空指针最好的方式:int *p=nullptr; 2.空指针的作用是: 当不清楚指针应该指向何处时,就把它初始化为nullptr。 3.空指针的注意事项: 将变量赋值给空指针的操作是错误的,即便变量值恰好 阅读全文
posted @ 2022-11-21 16:59 小凉拖 阅读(60) 评论(0) 推荐(0) 编辑
摘要: 多个指针可以指向同一块内存 堆区的使用: 当处理大数据的时候new后面应该加“(std::nothrow)”如果内存不够用了则new返回nullptr。 阅读全文
posted @ 2022-11-21 14:35 小凉拖 阅读(15) 评论(0) 推荐(0) 编辑
  2022年11月14日
摘要: 1.指针的4种状态 指向一个对象 指向近邻对象所占空间的下一个位置 空指针,意味着指针没有指向任何的对象 无效指针(野指针),也就是上述情况之外的其他值 对于第二种情况这里加以说明: 其实就是指向一个对象的后一位置,这个位置是不存在对象的,对此指针解引用将会是未定义的结果。这种指针主要作用是用来标识 阅读全文
posted @ 2022-11-14 19:13 小凉拖 阅读(19) 评论(0) 推荐(0) 编辑
  2022年11月11日
摘要: 写在前面: 返回栈区局部变量的地址是错误的 可以返回堆区局部变量的地址 返回值的理解: 我们知道,被调函数运行结束后才会返回主调函数,但是被调函数运行结束后系统为被调函数中的局部变量分配的内存空间就会被释放。也就是说,return 返回的那个值在被调函数运行一结束就被释放掉了,那么它是怎么返回给主调 阅读全文
posted @ 2022-11-11 19:25 小凉拖 阅读(45) 评论(0) 推荐(0) 编辑
摘要: 凡是全局,静态修饰的以及字符串都放在全局区里面 阅读全文
posted @ 2022-11-11 11:50 小凉拖 阅读(15) 评论(0) 推荐(0) 编辑
  2022年11月10日
摘要: 1 string teacher = "teach_"; 2 string name = "ab"; 3 teacher += name[0]; 4 cout << teacher << endl; 打印结果: 阅读全文
posted @ 2022-11-10 22:02 小凉拖 阅读(19) 评论(0) 推荐(0) 编辑