C++ 指针小知识

对于引用和指针:引用只是某块地址的别名,而指针是指向某一块地址,内容是所指的地址。

  • 本质上定义了一个数据类型的蓝图,定义了类对象包括了什么,以及在这个对象上可以执行那些操作。对象是由类来创建的,声明类的对象,就像声明基本类型的变量一样
    类对象的公共数据成员可以直接成员访问运算符(.)

构造函数

创建一个对象时被调用;

析构函数

删除一个元素时被调用;

每个对象都有一个this指针,指向自己;

标准程序库

标准程序有组织的集合。把经常用的计算过程与计算方法编成精度较高、运算速度较快而又尽可能短的典型程序,称为“标准程序”。

稀疏矩阵

在矩阵中,若数值为0的元素数目远远多于非0元素的数目,并且非0元素分布没有规律时,则称该矩阵为稀疏矩阵;与之相反,若非0元素数目占大多数时,则称该矩阵为稠密矩阵。

矩阵

(Matrix)是一个按照长方阵列排列的复数或实数集合,最早来自于方程组的系数及常数所构成的方阵。

*Triple 简单说就是ElemType类型的指针型变量

引用总结

(1)在引用的使用中,单纯给某个变量取个别名是毫无意义的,引用的目的主要用于在函数参数传递中,解决大块数据或对象的传递效率和空间不如意的问题。
  (2)用引用传递函数的参数,能保证参数传递中不产生副本,提高传递的效率,且通过const的使用,保证了引用传递的安全性。
  (3)引用与指针的区别是,指针通过某个指针变量指向一个对象后,对它所指向的变量间接操作。程序中使用指针,程序的可读性差;而引用本身就是目标变量的别名,对引用的操作就是对目标变量的操作。
  (4)使用引用的时机。流操作符<<和>>、赋值操作符=的返回值、拷贝构造函数的参数、赋值操作符=的参数、其它情况都推荐使用引用。

数组的局限(缺点)

链表

数组简单易用,在实现上使用的是连续的内存空间。缺点是大小固定,一经声明就要占用整 块内存空间。如果声明的数组过大,系统可能没有足够的连续内存空间分配给它。而如果声 明的数组过小,则可能出现不够用的情况。这时只能再声明一个更大的数组,然后把原数组 拷贝进去,非常费时。
链表最大的特点是大小动态可调,其大小与已经而不是计划存储的元素个数成正比。在确 定了操作点之后,插入和删除的操作耗时是固定的。但是使用链表也要为其动态特性付出 代价,例如每个元素都需要消耗额外的存储空间去存储一份指向下一个元素的指针类数据。

>

是指针的指向运算符,通常与结构体一起使用。

this 是 C++ 中的一个关键字,也是一个 const 指针,它指向当前对象,通过它可以访问当前对象的所有成员。所谓当前对象,是指正在使用的对象。例如对于stu.show();,stu 就是当前对象,this 就指向 stu。(指向当前对象)

::

是作用域运算符,A::B 表示作用域 A 中的名称 B,A 可以是名字空间、类、结构;
(A中的B,B包含于A)

类的构造函数是类的一种特殊的成员函数,它会在每次创建类的新对象时执行。
构造函数的名称与类的名称是完全相同的,并且不会返回任何类型,也不会返回 void。构造函数可用于为某些成员变量设置初始值。
下面的实例有助于更好地理解构造函数的概念:

posted @   YIMENG-0  阅读(34)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示