![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
vir_pigeon
这个作者很懒,什么都没留下…
展开
-
=default、=delete、decltype、lambda表达式
类成员里有带指针的成员函数,一般都要重新实现构造、拷贝、析构等函数,因为指针有浅拷贝深拷贝问题,可能拷贝的是指针的值也可能拷贝的是指针所值对象的值。原创 2021-11-23 18:42:05 · 202 阅读 · 0 评论 -
C++面向对象
函数动态绑定的三个条件:虚函数,向上转型,指针。原创 2021-11-13 22:21:07 · 514 阅读 · 0 评论 -
组合、委托、继承
static关键字:static属性, static成员函数只有一份,static成员函数没有this指针,方法里使用不了对象(类)里的数据,只能用static数据。 组合(Composition): has-a 委托(Delegation):Composition by reference(通过引用组合), point implementation(指针指向实现, Handle/Body), handle只暴露接口,body实现,又称编译防火墙。继承:基类的析构必须是虚函数。 组合(Comp.原创 2021-11-10 22:11:14 · 311 阅读 · 0 评论 -
complex、String类实现
#include <iostream>#include<string.h>using namespace std;class String{ public: String(const char* cstr = 0); String(const String& cstr); String& operator=(const String& str); ~String(); char* get_c_str() const {retu.原创 2021-11-10 10:55:10 · 246 阅读 · 0 评论 -
C++守则
数据尽可能放在private域。 构造函数尽可能用列表初始化。 参数,返回值尽可能用引用传递。 参数,函数类型尽可能用const。 构造方法放private, 单例模式。 相同class的各个objects互为友元。原创 2021-11-08 10:39:08 · 59 阅读 · 0 评论