![](https://img-blog.csdnimg.cn/direct/454c1993a6294a309680aefab1d0c124.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
c++语法
文章平均质量分 85
c++语言学习
遨游的laugh哥
CS
展开
-
static+单例模式+类的复合继承
handle类包含handleImpl类的指针,handle类的notify()只是一个接口,真正的实现是:handleImpl类的notify(),如果采用简单的浅拷贝,则两类中的两个指针将指向同一个地址,当对象快结束时,会调用两次析构函数,而导致指针悬挂现象。所以这时必须采用深拷贝。在对象复制时,只对对象中的数据成员进行简单的赋值,默认拷贝构造函数执行的也是浅拷贝。隐藏了声明类A的对象,因为由于包含的原因,类B已经有类A的对象的声明了。既然是包含关系,那么大的字节数是它包含的类的字节数加上自己的成员。原创 2024-04-17 02:28:57 · 1008 阅读 · 0 评论 -
new;getline();重载<<和>>
返回值0在windows下编程一般没用,但是在中编程,返回值有时有用。原创 2024-03-09 01:57:10 · 1155 阅读 · 0 评论 -
字符数组+自定义string类+lambda+for_each//find_if
public://构造函数,带有默认参数0//拷贝构造函数:没有返回值,而且参数是本类对象的引用//拷贝赋值函数:重载运算符=,返回值类引用//返回类私用成员函数//析构函数private:char *cstr;按值捕获的外部变量,其值都是在lambda中之前的值auto m = [=]() -> string{//有返回值,()不可省//c100这里是5而不是10,因为5被赋值了改成&后,值是修改后的。原创 2024-02-27 18:15:51 · 835 阅读 · 0 评论 -
指针数组与数组指针
由于普通类型int,double没有指向首尾字符的指针,需要借助end(),begin()函数。然后定义一个类型为数组的指针指向它:int* (*parr)[]=&arr;动态数组区别于静态数组,其不具备begin(),end()操作。p)[m]=new int[n] [m] 这里:n就是。首先得存在一个元素类型是指针的数组:int* arr[]数组元素的类型 (*指针名)【】=&数组名。元素数据类型为 int* 的数组 int*[ ]首先: int (*p)[数组元素个数]=数组名。原创 2024-01-21 01:35:11 · 428 阅读 · 1 评论