
c++
文章平均质量分 95
lishu14
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
由一次算法笔试引起的反思 c++特定格式读取 自定义比较函数 输出保留小数位数
某个题目:若干任务。每个任务完成有一定时间。每个任务有上游任务,必须先完成上游任务才能去做该任务。可以同时进行最多n个任务。输入格式为一行字符串:h:[e,f,g]:2;e:[b]:6;f:[c]:6;g:[d]:6;b:[a]:5;c:[a]:5;d:[a]:5;a:[]:3/2斜杠后的数字表示最多同时进行的任务数量。分号隔开若干个任务描述。每个任务描述组成方式:name:[name2,name3,name4,…]:time中括号内为上游任务。求完成这一系..原创 2020-09-29 11:39:17 · 258 阅读 · 0 评论 -
背包问题(背包九讲) acwing视频笔记
背包问题(背包九讲)(很多细节待校验,待补充剩下的三道题)文章目录背包问题(背包九讲)1. 01背包问题2. 完全背包问题3 多重背包问题4. 混合背包问题5. 二维费用的背包问题6. 分组背包问题本博客是B站up主大雪菜视频《背包九讲专题》的笔记,代码、题目描述均出自该视频。稍微加入了少量个人理解。另外也想借此机会练习markdownmarkdownmarkdown的使用方式。1. 01背包问题原题链接 (文中的题目描述截图均来源于AcWing)共有N个物品,背包容量为V。每个物品的体积为原创 2020-06-07 20:45:05 · 945 阅读 · 0 评论 -
当容器的元素是类指针时,迭代器本质是什么?
for (vector<Apple*>::iterator iter = vec.begin(); iter != vec.end(); iter++) { s += (*iter[0])(x); //两句话是一样的 // s += iter[0]->operator()(x);}假设有一个类Apple,内部声明了一个成员函数operator(),也就是重...原创 2018-09-28 11:31:27 · 353 阅读 · 0 评论 -
使用纯虚函数的一个小细节——派生类定义该虚函数时声明语句必须与基类里完全一致
问题描述:纯虚函数在派生类里明明补写出来了定义,但是实际发现是无效的,派生类因没有定义该纯虚函数同样被编译器视为了抽象类。原因很有可能是:基类和派生类的虚函数必须类型、名字、参数数量、名字、类型、以及函数前后缀的各种其他属性(比如const等)必须完全一致!否则会被认为不是同一个函数。无法产生“覆盖”的效果,而可能仅仅是“重载”,这样就会有各种意想不到的问题了。比如我便是在派生类里重写该纯虚函...原创 2018-09-28 11:40:01 · 3817 阅读 · 0 评论 -
C++重载等号的习惯与特点
背景:有一个类Apple, 包括一个私有成员变量a和两个公共接口:SetA ,GetA分别是修改a和获取a。则重载=时可以用以下两种方式:Apple& operator= (const Apple & tem) { this->SetA(fun.GetA()); return *this;}Apple* operator= (const A...原创 2018-09-28 11:52:00 · 1979 阅读 · 0 评论 -
C++ const关键字的使用总结
网上关于const的使用已经有大量的文章进行介绍。这里仅仅总结个人遇到的一些有趣的情况:1、当声明一个对象为const属性时,它的成员函数也得是const属性。背景:有一个如下的类。和本问题相关的地方只需要关注——GetSize函数和复制构造函数。如果删除GetSize函数的const属性,则复制构造函数在实现过程中编译器会提示出错,错误截图在下方。class SumOfFunctio...原创 2018-09-28 12:09:40 · 230 阅读 · 0 评论 -
Mac OS下使用VS Code对C++程序进行debug的配置
Mac OS下使用VS Code对C++程序进行debug的配置参考:https://blog.youkuaiyun.com/YangZuo_Chester/article/details/80644226很有启发。转载 2019-09-16 00:44:26 · 554 阅读 · 0 评论 -
c++: for 循环递减的特殊用法
# include<iostream>int main(){ int s=0; for (int i=10;i--;s+=i) { std::cout<<i<<std::endl; } std::cout<<"sum_of_i = "<<s<<std::endl; re...原创 2019-09-16 09:38:55 · 2162 阅读 · 0 评论 -
C++ ------ const迭代器 和 const_iterator的区别
http://c.biancheng.net/view/338.htmlconst迭代器,顾名思义,就是不能改变的迭代器,是常量,其性质是由const决定的。比如说我们这样定义一个const迭代器。则,当程序中出现如下的语句时是错误的其原因是iter是一个常量,因此是不能改变的。换句话说,iter只能指向vv的地一个元素,不能指向其他的元素。但是这样的语句...转载 2019-09-16 11:24:31 · 185 阅读 · 0 评论