- 博客(24)
- 收藏
- 关注
原创 C++——类和对象(2)
构造函数是特殊的成员函数,需要注意的是,构造函数虽然名称叫构造,但是构造函数的主要任务并不是开空间创建对象(我们常使用的局部对象在栈帧创建时,空间就开好了),而是对象实例化时初始化对象。构造函数的本质是要替代我们以前在Stack和Date类中写的Init函数的功能,构造函数自动调用的特点就完美的替代的了Init。析构函数与构造函数功能相反,析构函数不是完成对对象本身的销毁。比如局部对象是存在栈帧的, 函数结束后栈帧就销毁,它就释放了,不需要我们管。
2024-09-07 17:03:43
1235
15
原创 C++——类和对象(1)
①class为定义类的关键字,Stack为类的名字,{}中为类的主体,注意类定义结束时后面的分号不能省略。public:// 成员函数perror("malloc申请空间失败");return;top = 0;// ...扩容int Top()private:// 成员变量int* array;size_t top;// 分号不能省略②类体中内容称为类的成员,类中的变量称为类的属性或成员变量,类中的函数称为类的方法或 者成员函数。
2024-09-05 10:21:34
1272
15
原创 C++——入门基础(下)
引用就是给已经存在的变量取别名,而且编译器不会为引用变量开辟内存空间,它和被引用的变量公用同一块内存空间。类型& 引用别名 = 引用对象。int& b = a;//b是a的别名int& c = b;//也可以给别名再取别名:c是b的别名++c;//取地址之后我们看到这几个地址是一样的//也就是说:这几个别名共用一个地址return 0;
2024-09-03 16:34:56
1630
20
原创 C++——入门基础(上)
①定义命名空间,需要用到namespace关键字,后面跟着命名空间的名字,然后用一对{}连接,{}中为命名空间的成员。命名空间可以定义变量/函数/类型等。与结构体的区别是:{}后面没有分号;//变量//函数//类型int val;②namespace本质是定义出一个域,这个域跟全局域各自独立。③不同的域可以定义同名变量,因此下面的两个rand不会冲突。int val;int main()//这里默认访问的是全局的rand函数指针(即头文件stdlib.h中的)
2024-08-19 21:22:40
1476
25
原创 数据结构——顺序表来啦~
总的来说,顺序表比数组要方便很多,但是存在一些问题:1.在增容时需要申请新空间、拷贝数据、释放旧空间,会有不少的空间消耗;2.增容一般为2倍增长,势必会有一定的空间浪费;3.中间/头部的插入和删除,时间复杂度为O(n)。如何解决这些问题呢?单链表。
2024-07-20 19:59:40
883
12
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人