c++
夜风~
手与大脑的距离决定了理想与现实的相似度!
展开
-
内存异常实例解析(core dump、segmentation fault)
释放栈上的指针#include <iostream>using namespace std;int test(){ int a = 100; int *ptr = &a; free(ptr); }int main(){ test(); return 0;}报错: invalid point...原创 2019-12-08 17:16:16 · 3213 阅读 · 0 评论 -
c++ ——静态成员变量和静态成员函数
c++ 静态成员变量用static 关键字来声明,是整个类的数据成员,其存储不占用某个具体对象的空间,其存储在静态存储区。c++ 静态成员函数用static 关键字来声明,用于处理静态成员变量,可以用类名来调用,也可以用对象名来调用。测试代码:#include <iostream>using namespace std;class Point{public: Po...原创 2019-11-24 16:03:46 · 3212 阅读 · 1 评论 -
c++ 复制构造函数
c++ 复制构造函数的声明和定义的语法如下:class 类名{public: 类名(形参);//构造函数 类名(const 类名 &对象名);//类内复制构造函数的声明 ......};类名::类名(const 类名 &对象名){//函数体}以实际的栗子进行说明。#include <iostream>using namespace std;...原创 2019-11-16 22:07:21 · 1301 阅读 · 0 评论 -
c++中std::auto_ptr的使用解析
前言由于 C++ 语言没有自动内存回收机制,程序员每次 new 出来的内存都要手动 delete。程序员忘记 delete,流程太复杂,最终导致没有 delete,异常导致程序过早退出,没有执行 delete 的情况并不罕见。用智能指针便可以有效缓解这类问题,本文主要讲解std::auto_ptr智能指针。对于编译器来说,智能指针实际上是一个栈对象,并非指针类型,在栈对象生命期即将结束时,智...原创 2019-09-28 23:26:20 · 2145 阅读 · 0 评论