More than code

More Than Code
The efficiency of your iteration of reading, practicing and thinking decides your understanding of the world.
daily

Daily C/C++ 异常安全性

异常安全性 老样子,先放出第一手信息源 CSDN wiki 今天我们只讨论简单的异常安全 简单点说,异常安全就是保证在执行我们的函数的时候,不会出现资源的破坏,或者泄露的情况 之前讲到的RAII其实就是一种处理情况,即利用了自动析构的特性帮助我们管理资源 这里再来讲一种情况 class A { A &operator= (const A &others) { if (this != &others) { delete ptr; ptr = new T(*others.ptr); } retu…

2021年5月31日 0条评论 550点热度 0人点赞 sheep 阅读全文
daily

Daily C/C++ operator->()

operator->() 说实话这一个小玩意单独拿出来做一章有点小题大做,所以这篇文章相对会比较短 还是,希望给大家第一手的信息,而不是我嚼过的 stackoverflow tutorialspoint cppreference 在搜集资料的过程中,我还发现了->* 和 .* 这样的运算符,他们主要就是指向类成员的指针,无论是成员函数还是成员变量 可以简单的理解为,从右向左看,先解引用,然后在访问成员 具体可以看这里 stackoverflow 现在回到->这里,重载的operator->()必须是非静…

2021年5月31日 0条评论 516点热度 0人点赞 sheep 阅读全文
其他

杂谈-学习汇编语言的必要性

杂谈-学汇编语言的必要性? 先说点题外话在前头,我发现自己目前一个很致命的缺点,就是我不能很好的将自己思考的内容完全的讲述出来 这不像是讲知识点,或者算法,技巧什么的,那些东西都是有迹可循的,我只需要跟着自己思考问题的思路走,就可以把他们讲出来 虽然表达的有时候不是很清晰,但是至少他是一个整体的 但是对于某些事情的思考,完完全全是随机的,不能控制的,可能有的时候我就会冒出一个观点,一个想法,但是仔细推敲却发现自己无法还原这些东西,就像是做了梦一样 包括今天要写的这个文章,也是自己突然冒出来的一点想法 我知道自己目前…

2021年5月28日 1条评论 684点热度 0人点赞 sheep 阅读全文
daily

Daily C/C++ RAII

RAII 先把原文章贴在前面,可以先看原文章有了自己的理解,再来看我说的补充 原文章 RAII(Resource Acquisition Is Initialization) 一些背景的介绍就不多说了,网上讲这个的貌似也不少,这里就说一说自己的理解吧 资源的获取即初始化,其实直观的来说,就是new的组合 记得之前我有一篇文章讲new,当我们在c++中new一个对象的时候,他会首先用operator new来进行空间的分配,然后再执行对象的构建,当分配不成功的时候,对象也不会被成功的构造,这就是RAII直接的意思 我…

2021年5月27日 0条评论 526点热度 0人点赞 sheep 阅读全文
ARTS

ARTS打卡 第三周

ARTS打卡 第三周 最开始感觉ARTS打卡还蛮容易的,每周只要做一次就好,甚至曾经还妄想每天一次 现在发现自己确实没这么多时间 上周主要的时间都用来取搞学校里的课程设计,实验,大作业了,感觉自己的提升不是很多,书也没看多少 不过最基本的底线,还是每天保证刷算法题至少达到了,周赛也打了,不过最近发现自己已经快做不出第四题的样子了 这周的算法题有两个值得说一说 奇怪的打印机 读完题就可以很明显的发现是一道dp了,我们是在区间中取最值,且满足最优子结构的性质,所以可以发现这是一个区间dp 这道题有意思的点是状态转移 很…

2021年5月26日 0条评论 557点热度 0人点赞 sheep 阅读全文
daily

Daily C/C++ stl小应用

stl小应用 前几天有看到一些stl函数,恰好今天的leetcode的每日一题可以让我们把这些函数运用上来 要用到的函数主要有 sort() transform() nth_element() accumulate() 先看题 题意很简单,就是叫我们统计出词频前K大的单词 这里先说我解决这道题的思路,复杂度应该是O(n + klogk)的,理论上是比官方的O(nlogk)要更好一些的 但是应该是我常数写的比较大导致最后结果比较慢 思路就是首先用哈希表统计出每个单词的词频,然后用nth_element来找出前k个,最…

2021年5月20日 0条评论 547点热度 0人点赞 sheep 阅读全文
daily

Daily C/C++ std::accumulate

std::accumulate 对于函数式编程的定义较为广泛,大家可以去网上搜一搜 然后在开始之前,我们明确一个概念 能够接收函数作为参数或返回函数作为结果的函数成为高阶函数 C++中的仿函数,lambda表达式让C++函数式编程成为可能 对于我们今天的主角,std::accumulate,他是STL提供的一个高阶函数,可以用来计算集合中所有条目的累加和 使用方法如下 std::accumulate(array.begin(), array.end(), 0) // 前两个参数是容器的迭代器,用于表示开头和结尾 /…

2021年5月18日 0条评论 623点热度 0人点赞 sheep 阅读全文
ARTS

ARTS 第二周打卡

ARTS 第二周打卡 算法: leetcode周赛的最后一题 链接 赛场上没写出来,脱离算法竞赛已经有两年半了,中间自己零零散散的打过几次codeforces,看起来现在做思维题已经是不太在行了 应该给自己一点时间去补一补codeforces的题,稍微训练训练思维能力,否则leetcode周赛不能稳定四题的话,还是比较对不起以前的水平的 这次就是在思维上出了差错,虽然想到了是一根一根的放,但是由于没有考虑到放的顺序,当时我认为是从小的开始放,但是问题就变得复杂了很多 正解是从大的先放,这样换一个角度,问题就会简单很…

2021年5月18日 0条评论 546点热度 0人点赞 sheep 阅读全文
daily

Daily C/C++ 虚函数的继承

虚函数的继承 今天的文章相对简单 考虑下面这个程序 class A { public: virtual void test() { cout << "A"; } }; class B: public A { public: void test() { cout << "B"; } }; class C: public B { public: void test() { cout << "C"; } }; int main() { C c; B *ptr = &c; ptr…

2021年5月16日 0条评论 534点热度 0人点赞 sheep 阅读全文
daily

Daily C/C++ new表达式

Daily C/C++ new表达式 今天重新打开了STL源码剖析这本书,想着从头开始看一遍 没想到刚开始的allocator的部分的代码就给我卡住了,最后还是上了cppreference,才找到了比较全的资料,这里就简单说一下c++中的new表达式 首先,new表达式不仅仅是我们平时用来在堆上分配内存用的东西,他还有很多延伸出来的部分 我们来看cppreference的定义 new 表达式尝试申请存储空间,并在已申请的存储空间上,尝试构造并初始化一个无名的对象或对象数组。new 表达式返回一个指向其所构造的对象或…

2021年5月14日 0条评论 549点热度 0人点赞 sheep 阅读全文
123
分类
  • ARTS
  • C++
  • CSAPP
  • daily
  • database
  • leetcode
  • linux
  • ml
  • nlp
  • paper
  • rocksdb
  • rust
  • ScummVM
  • tech
  • 其他
  • 周报
  • 未分类
  • 笔记
  • 算法
  • 计算机图形学
归档
  • 2025 年 5 月
  • 2025 年 4 月
  • 2025 年 3 月
  • 2025 年 2 月
  • 2025 年 1 月
  • 2024 年 12 月
  • 2024 年 10 月
  • 2024 年 9 月
  • 2024 年 8 月
  • 2024 年 7 月
  • 2024 年 6 月
  • 2024 年 5 月
  • 2024 年 4 月
  • 2024 年 3 月
  • 2024 年 2 月
  • 2023 年 12 月
  • 2023 年 11 月
  • 2023 年 9 月
  • 2023 年 7 月
  • 2023 年 6 月
  • 2023 年 5 月
  • 2023 年 4 月
  • 2023 年 2 月
  • 2023 年 1 月
  • 2022 年 9 月
  • 2022 年 7 月
  • 2022 年 6 月
  • 2022 年 5 月
  • 2022 年 4 月
  • 2022 年 3 月
  • 2022 年 2 月
  • 2022 年 1 月
  • 2021 年 12 月
  • 2021 年 11 月
  • 2021 年 10 月
  • 2021 年 9 月
  • 2021 年 8 月
  • 2021 年 7 月
  • 2021 年 6 月
  • 2021 年 5 月
  • 2021 年 4 月
  • 2021 年 3 月
  • 2021 年 1 月
  • 2020 年 12 月

COPYRIGHT © 2021 heavensheep.xyz. ALL RIGHTS RESERVED.

THEME KRATOS MADE BY VTROIS