
C++
文章平均质量分 54
冲、冲、冲!!!
欢迎各位大佬批评指正!!!
展开
-
C++(STL常用算法)
常用的算法基本包含在< algorithm > < functional >< numeric >文件下< algorithm >是STL文件中最大的一个,主要涉及比较、交换、查找、遍历操作、复制、修改等< functional >体积小,只包括几个在序列上面进行简单数学运算的模板函数< functional >定义了一些模板类,用来声明函数对象遍历算法函数原型 ://遍历容器//beg、end、开始和结束迭代器//_f原创 2022-05-09 16:14:59 · 93 阅读 · 0 评论 -
C++(STL-函数对象)
重载函数调用操作符的类,其对象称为函数对象,由于使用重载运算符()时类似于函数调用,也叫仿函数,函数对象是一个类,不是一个函数。函数对象的使用可以像普通函数一样,可以有参数和返回值,超出普通函数概念,可以有自己的状态,函数对象可以作为参数传递。class MyAdd{ public: MyAdd(){this->count=0;} int operator()(int v1,int v2) { return v1+v2; this->count++; }in原创 2022-05-06 15:48:20 · 222 阅读 · 0 评论 -
C++(STL)
C++的STL相关知识原创 2022-05-03 16:17:25 · 1277 阅读 · 0 评论 -
C++(模板)
模板的使用及注意事项原创 2022-04-30 16:26:07 · 765 阅读 · 0 评论 -
C++(为什么必须使用虚函数才能构成多态)
我们知道,想要构成多态,必须使用虚函数,借助于虚函数表来实现,我们也知道,虚函数表是为了让父类引用子函数对象实现多态的,但是,为什么必须使用这种方式呢,来看一个有意思的例子class Car{ public: int a=0; void show(){ cout<<"this is virtual Car"<<a<<endl; }};class miniCar: public Car{ public: int a=20;原创 2022-04-27 21:32:51 · 1223 阅读 · 2 评论 -
C++(父类和子类的转换、多态实现的本质之虚表)
子类转换为父类class Car{ public: int a; virtual void show(){ cout<<"this is virtual Car"<<endl; } void show2(){ cout<<"this is Car"<<endl; }};class miniCar: public Car{ public: int a=20; void show() { cout&l原创 2022-04-27 18:29:31 · 898 阅读 · 0 评论 -
C++(类的继承)
继承的基本使用;多继承;虚继承原创 2022-04-27 02:44:15 · 615 阅读 · 0 评论 -
C++(运算符重载)
运算符重载原创 2022-04-26 16:02:42 · 157 阅读 · 0 评论 -
C++(友元函数)
友元类中的私有成员一般只能通过该类设置的方法进行访问,但是如果其他类,或者其他函数希望访问该类的私有成员属性,就需要用到友元函数友元函数就像自己有很多好朋友,好朋友经过自己授权可以访问自己的私有属性,不授权则无法访问全局函数作为友元函数class Car{ //在类先声明友元函数 friend void viewName(Car &c); public: Car(string name) { this->name=name; } private: s原创 2022-04-25 21:57:16 · 338 阅读 · 0 评论 -
C++类对象里的其他类的指针开辟内存问题
类中的其他类对象定义需要开辟堆内存当类中包含指针变量且使用成员函数给指针变量赋值,需要注意指针指向的数据生命周期,如果在函数创建一个类对象,那么类对象在该函数调用完后就会调用析构函数,结束该对象生命,此时需要给在函数里创建的对象new一个内存出来,用指针接收,然后自己不用的时候人为用delete释放内存class BWM{};class Car{ public: void hasWhat() { BWM b2; b=&b2; } private: BW原创 2022-04-25 21:34:39 · 258 阅读 · 0 评论 -
C++(常函数、常对象)
常函数、常对象首先明确:常函数不能修改成员变量(可以调用,不能修改)想要修改成员变量,必须在成员变量前加mutable关键字常对象只能调用常函数,但是普通对象既可以调用普通函数也可以调用常函数class car{ public: //常函数的const加在大括号之前,本意是在普通函数的this指针前加const, //形成const car* const c这样的结构,及不可以更改指针的地址,也不可以改指针指向的值 car(string name) { this-&g原创 2022-04-25 20:27:30 · 1681 阅读 · 0 评论 -
C++(静态成员变量、函数、this指针)
静态成员变量及函数使用static关键字定义,需要注意静态变量不单独属于某一个对象,所有该类的对象都可以访问同一个静态变量,但是私有静态变量不能共享。成员函数一样。class car{ public: static string m_name;//静态成员变量 //静态成员函数只能访问静态变量,因为静态成员函数所有对象共享,故调用时里面如果使用了非静态变量 //又因为静态成员函数不属于类对象本身,则编译器无法识别调用的是哪个对象的非静态变量 //更简单的说,当直接使用域作用符,如ca原创 2022-04-25 17:15:16 · 276 阅读 · 0 评论 -
C++(类与对象,构造函数、拷贝函数、深拷贝浅拷贝、初始化列表)
文章目录构造函数等注意事项深拷贝和浅拷贝的问题初始化列表构造函数等注意事项构造函数三种调用方式class Person{public: Person(int a) { m_a = a; } Person(int a, string str) { m_a = a; m_str = str; } Person(const Person &p) { p.m_a=m_a; p.m_str=m_str; }private: int m_a; strin原创 2022-04-24 23:04:06 · 68 阅读 · 0 评论