C++学习
文章平均质量分 84
王十二er
这个作者很懒,什么都没留下…
展开
-
C++ 模板
泛型,是一种将类型参数化以达到代码复用的技术,C++中使用模板来实现泛型模板的使用格式如下:typename和class是等价的里面这个 “T” 是可以变化的,前面是固定的int m_x;int m_y;int m_y;getchar();return 0;getchar();return 0;这段代码里在C++运算符重载(操作符重载)原创 2024-05-11 22:00:32 · 485 阅读 · 1 评论 -
C++运算符重载(操作符重载)
有时候我们需要让对象之间进行运算, C++ 提供的“运算符重载”机制,赋予运算符新的功能,就能解决用+将两个复数对象相加这样的问题。,因为左移运算符左边是cout,而想要调用类里的成员函数首先要是对象才行,而cout显然不是对象,括号运算符()也可以重载,对象名可以当成函数来使用(函数对象、仿函数)。除了 “ + ”,还有其他的运算符重载,如 “ - ”(减法运算)接着刚才的问题,我们利用运算符重载为运算符增加一些新的功能,,既可以接受const对象,也可以接受非const对象。原创 2024-05-11 13:45:14 · 2200 阅读 · 1 评论 -
C++拷贝构造函数
用一个已存在的对象创建新的对象,不会调用(普通)构造函数,而是调用拷贝构造函数。如果类中没有定义拷贝构造函数,编译器将提供一个拷贝构造函数,它的功能是把已存在对象的成员变量赋值给新对象的成员变量。拷贝构造函数是构造函数的一种当利用已存在的对象创建一个新对象时(类似于拷贝),就会调用新对象的拷贝构造函数进行初始化拷贝构造函数的格式是固定的,接收一个const引用作为参数格式固定,类名(const 类名& 对象名){…}编译器默认的提供的拷贝是浅拷贝(shallow copy)原创 2024-05-08 13:00:49 · 1332 阅读 · 1 评论 -
C++ 对象型参数和返回值
因为函数调用后会自动销毁,里面的栈空间会被回收,但是你还要返回对象值,所以就会提前拷贝构造出一个新的对象,将这个新的对象存在main()的栈空间中。答:把外面的对象传给这个函数,就是希望这个函数里面可以访问到外面对象的一些属性,可以用引用或者指针来代替。第三次是函数的返回值返回来一个car对象,这个返回值赋给了 car2 对象,相当于一次浅拷贝。使用对象类型作为函数的参数或者返回值,可能会产生一些不必要的中间对象。然后就是在函数里创建对象,又调用了一次。首先就是创建对象时,调用了一次。原创 2024-05-08 17:19:53 · 471 阅读 · 1 评论 -
C++ const成员和引用类型成员
定义:被 const 修饰的成员被const修饰的成员变量、非静态成员函数。原创 2024-05-06 21:09:00 · 269 阅读 · 0 评论 -
C++之static
静态成员:被static修饰的成员变量(成员函数);只占用一份内存。静态成员变量必须初始化如何访问?答:可以通过对象(对象.静态成员)、对象指针(对象->静态成员)、类访问(类名::静态成员静态成员变量答:1.存储在数据段(全局区,类似于全局变量),整个程序运行过程中只有一份内存2.必须初始化,必须在类外面初始化,初始化时不能带static,如果类的声明和实现分离(在实现.cpp中初始化)3.对比全局变量,它可以设定访问权限(public、 protected、 private),原创 2024-05-06 16:40:07 · 476 阅读 · 0 评论 -
C++多继承
C++语言支持多继承,一个子类可以有多个父类,子类拥有所有父类的成员变量,子类继承所有父类的成员函数,子类对象可以当作任意父类对象使用。C++ 允许一个类可以有多个父类(不建议使用,会增加程序复杂度)原创 2024-04-29 23:03:04 · 256 阅读 · 0 评论 -
C++多态
C++多态的相关知识原创 2024-04-29 19:32:23 · 738 阅读 · 0 评论