C++
言心雨
这个作者很懒,什么都没留下…
展开
-
C++多态基类指针使用
基类指针使用两种方法1.基类指针直接取派生类对象的地址 A* a; B b; a = &b;2.基类指针强制转换为派生类指针```cpp A* a; a = new A; B* b = (B*)a; a->asd(); delete a;需要注意的是在使用虚函数的前提下,基类指针指向的地址决定的调用函数为基类还是派生类初学C++不当之处请指正!...原创 2020-11-16 13:00:34 · 681 阅读 · 0 评论 -
浅谈虚析构的使用
派生类对象地址赋值给基类指针时必须使用虚析构。例A为基类B为派生类当A定义指针 pB定义对象 qp =&q ;如果不使用虚析构在析构时会跳过类B,只析构A具有一定的风险性int main(){ A *b; B *a; a = new B; b = a; b->asd(); delete b; return 0;}不使用虚析构使用虚析构...原创 2020-11-16 12:53:50 · 189 阅读 · 0 评论 -
C++解决输入错误数据类型导致系统崩溃问题
对于博主这样的小白,困扰多天的一个问题就是在编写一个小项目是(成绩管理系统),选项是整形,但是手贱总是输入成字符型,该如何让解决废话不多说,直接上代码:cin >> select;//接受用户选择while (cin.fail()) //如果输入类型和定义类型不一致为true{if (cin.fail()){cout << “输入选项不合法!!!” << endl;cin.clear();system(“pause”);system(“cls”);m原创 2020-11-13 21:37:00 · 1138 阅读 · 0 评论 -
浅谈如何使用vector容器实现C++删除或修改txt文件中的某一行
在C++中不能直接修改文本文件的某一行,但是可以使用复制文件作为一个临时的文本,在复制过程中进行修改删除,然后再进行覆盖。 可以使用一个临时的txt文件,我这次主要想讲讲利用vector容器 1、在类中定义一个vector容器 例如 vector<class Cplusplus> CPP; 2、打开文件 ifstream ifs; ifs.open(CPP_FILE, ios::in); 3、清空容器,防止容器中有内容 CPP.clear(); 4、依次将文件中的.原创 2020-11-13 21:29:42 · 1806 阅读 · 2 评论