C++
文章平均质量分 63
06le
这个作者很懒,什么都没留下…
展开
-
在函数中传递指针的问题
在函数中传递指针的问题在写二叉搜索树插入函数的时候,如果给定二叉树是空,就把插入节点作为根节点,这里我简单的把插入节点复制给树根节点。退出函数以后,根节点没有值。void insert(TreeNode* root, TreeNode &node){ ... if (pnode == nullptr) root = &node; ...}问题出在指针传递时是拷贝传值,对这个root的修改不会影响到函数外部的root,我们只能通过这个ro原创 2022-01-03 15:37:43 · 523 阅读 · 0 评论 -
C++ 左值引用与右值引用的作用及实现原理
定义及作用左值:表示对象的身份,生命周期持久。 对左值的修改实际上就是对对象的修改。右值:表示对象的值,生命周期短暂。左值引用的设计直接原因就是方便运算符重载。 比如对于+运算符的重载如果没有引用会写成 A operator +(const A *a, const A *_a); ,使用要写成&a+&b,而有了引用可以直接写成A operator +(const A &a, const A &_a); 和a+b,语法更简洁,也不容易出错。 引用由于要初始化并且不能更改绑原创 2021-09-02 10:20:00 · 1675 阅读 · 0 评论 -
C++ 类的访问控制与继承
访问控制关键字介绍:Public:成员在整个程序内都可以被访问。private:成员可以被类的成员函数访问,但不能被使用该类的代码访问。Protected:类希望有些成员能让派生类访问,不希望其他类访问。(只能通过派生类对象来访问基类数据成员)。派生类的成员或友元只能通过派生类对象来访问基类受保护的成员(派生类对象含有继承的基类数据成员),如果不是派生类对象就不能访问(例如在派生类中定义的基类对象),否则在派生类中定义一个基类对象就可以访问基类的protected成员,那protected的保护就原创 2021-06-14 19:35:29 · 213 阅读 · 0 评论