![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++
从心开始woo
SJTU
展开
-
面向对象编程-侯捷老师的OOP课程笔记
侯捷老师的OOP笔记写在飞书文档笔记原创 2021-05-31 09:32:24 · 99 阅读 · 0 评论 -
c++ Primer 第十五章 面向对象程序设计 重点梗概
面向对象的程序设计三个基本概念数据抽象: 这个前面已经很熟悉了继承动态绑定后两个是本章重点动态绑定当且仅当对通过指针或引用调用虚函数时,才会在运行时解析该调用,也只有在这种情况下对象的动态类型才有可能与静态类型不同上述事实是C++支持多态性的的根本,因为我们能使用这些具有继承关系的多种形式而无需在意他们的差异。虚函数在基类中定义,希望派生类重写的函数,在定义之前使用virtual关键字。所有的虚函数都必须有定义。继承的特殊情况继承与静态成员静态成员只能存在唯一的定义。如果原创 2020-07-14 14:40:12 · 96 阅读 · 0 评论 -
c++ Primer 第十三章 拷贝控制 重点梗概
基本操作:拷贝、原创 2020-07-05 11:30:42 · 116 阅读 · 0 评论 -
c++ Primer 第十二章 动态内存 遗留问题
重点不要使用new delete手动管理动态内存,而是使用智能指针shared_ptr和unique_ptr问题112.3节的文本查询类 在定义时为什么使用了file(new vector<string>)而不是make_shared<vector<string>>这种更安全的方式?2最终的print函数当中,为什么可以访问对象的私有成员lines/file??只是因为他们时shared_ptr类型吗解决明早手写一遍看看...原创 2020-07-01 11:16:41 · 113 阅读 · 0 评论 -
c++ Primer 第十一章 关联容器 重点梗概
使用关联容器map虽然是关联容器,但仍然是有序存储的,也就是说关键字的类型必须有比较运算,当然可以自定义.map使用下标运算会创建关键字,而使用at方法不会,所以下标运算只能对非const的map使用map的迭代器指向它的value_type,是一个pair向map添加元素时,类型也必须是pairinsert的返回值也是一个pair,first是一个迭代器,指向插入的那个元素,second是一个boolset如何自定义关键字严格弱续mutiset<Sales_data, decl原创 2020-06-30 10:22:24 · 93 阅读 · 0 评论 -
c++ Primer 第十章 泛型算法 重点梗概
概述算法依赖于迭代器,而迭代器不依赖于容器,所以算法不依赖于容器但是算法往往涉及比较,但是容器中的元素不一定定义了比较运算符,所以大多数的算法提供了一种方法,允许我们使用自定义的操作来代替默认的运算符初识泛型算法1. 只读算法accumulate(iterator beg, iterator end, T value)equal (iterator beg, iterator end, iterator beg2)对于只读取而不改变元素的算法,最好使用cbegin() cend原创 2020-06-28 19:51:51 · 120 阅读 · 0 评论 -
c++ Primer 第九章 顺序容器 重点梗概
前言顺序容器和关联容器顺序容器: vector之类的按序索引的容器关联容器:map等按键索引的容器容器库概览将一个容器初始化为另一个容器的拷贝C c1(c2); C c1 = c2; 两种容器类型和元素类型都必须相同C c(beg, end); 不要求容器类型一致,甚至元素类型可以转换时,元素类型也可以不一样。swap和assign前者必须是两个相同类型的容器后者则无需tips:使用非成员函数版本的swap是一个好习惯,在泛型编程中十分钟重要。容器的比较必须在元素定义了关系运原创 2020-06-26 16:55:56 · 91 阅读 · 0 评论 -
c++ Primer 第八章 IO库 梗概
三种IO库类型分别定义了处理标准char和宽字符char(wchar_t: 超过32位,一般用来保存unicode编码的字符)的流处理类型普通流文件流string流每种流都是iostream的派生类除了通用的方法,还有自己的方法状态值条件状态时iostate的位值,有1位不是0就表示失败条件状态有管理和查询的方法输出缓存记得刷新文件流需要考虑文件模式String流可以活学活用...原创 2020-06-22 11:03:39 · 109 阅读 · 0 评论 -
C++ Primer第七章习题
练习7.1#include <iostream>#include <string>using namespace std;struct Sales_data{ string bookNo; unsigned units_sold = 0; double revenue = 0;};int main(int argc, char* argv){ ...原创 2019-09-18 21:07:09 · 271 阅读 · 1 评论 -
C++ Primer第六章习题
前言从本章开始每一道题都要进行回答。毕设也结束了,今天也拿到了研究生录取通知书,暑假就要迅速吃透这本书,并做好下一步的计划。练习6.1实参和形参的区别是什么实参必须是有定义的,是函数体之外定义好的,形参是函数体之内需要使用的但是未定义的。实参列表无须声明类型,形参列表必须每个参数都要声明类型。练习6.2找出函数的错误(1)函数定义类型是int与返回值类型不匹配(2)没有声明函数的返...原创 2019-06-20 12:10:28 · 471 阅读 · 0 评论 -
C++ Primer第五章习题
习题5-1:空语句就是什么都不写,只含有一个单独的分号。;//空语句使用场景:语法上需要一条语句但是逻辑上不需要。原创 2019-05-14 17:02:37 · 166 阅读 · 0 评论 -
C++ Primer第四章习题
习题4-21:条件运算符的使用#include <iostream>#include <vector>using namespace std;int main(){ cout << "Please input some numbers, type -1 to stop" << endl; vector<int> te...原创 2019-05-14 16:58:47 · 105 阅读 · 0 评论 -
C++ Primer第三章习题
#include <iostream>#include <string>using namespace std;int main(){ string s; cout << "Please Input Your Name;" << endl; getline(cin,s); cout << s << endl...原创 2019-04-29 18:00:00 · 99 阅读 · 0 评论