foreword ummm... 开始前几个小时被朋友拉来打了这一场,总体海星,题目体验极佳,很符合口味,稍微有点点简单了不知道是不是因为是 New Year Round,很快就打到了 D,但是题目阅读难度有点点大,Alice 和 Bob 永远离不开的博弈论,呼应去年的博弈论。 少有的评测机出锅(也 ...
分类:
其他好文 时间:
2019-02-02 19:13:35
阅读次数:
238
`std::shared_ptr`智能指针是c++11一个相当重要的特性,可以极大地将开发者从资源申请/释放的繁重劳动中解放出来。 然而直到c++17前 都有一个严重的限制,那就是它并不支持动态数组: 错误的原因很明显,然而 的就没有那么好找了,究其原因,是因为 对非数组类型都使用 释放资源,显然这 ...
分类:
编程语言 时间:
2019-02-01 20:38:44
阅读次数:
226
题记:内存管理一直是C/C++程序的红灯区。关于内存管理的话题,大致有两类侧重点,一类是内存的正确使用,例如C++中new和delete应该成对出现,用RAII技巧管理内存资源,auto_ptr等方面,很多C/C++书籍中都使用技巧的介绍。另一类是内存管理的实现,如linux内核的slab分配器,S ...
分类:
其他好文 时间:
2019-02-01 14:10:35
阅读次数:
227
下面这行代码 当在Debug状态时,代码没总理。当切换到Release状态时这整句代码是不执行的 说明assert内部的表达式 必须为判断,而不能为一个动作。否则这个动作在Release的版本中是无法执行的。 ...
分类:
其他好文 时间:
2019-01-28 22:25:21
阅读次数:
213
需求:原本是定义5个字段存储的类型全部都是 数字类型,后来需求变了,每个字段可能存储粘接类型 如:135/200这种格式 原本的数据表结构: CREATE TABLE MTG_SOC_MEASURE( PKEY NUMBER(10,0), MTG_EQUIP_INFO_PTR NUMBER(10,0 ...
分类:
其他好文 时间:
2019-01-28 17:38:26
阅读次数:
194
const同C一样,用来表示一个常量 当const修饰一个指针变量时,通常有两种情况 1. pointer 是一个指针常量 也就是说,这个指针指向的是一个固定的内存,但是内存的数据可以发生变化 a的值可以变化,但是ptr的值无法变化 2. pointer指向一个常量 也就是说, 这个指针指向的内存内 ...
分类:
编程语言 时间:
2019-01-27 13:06:59
阅读次数:
212
5.2.1 Class shared_ptr shared_ptr提供了一种强大的能力:当对象被多个指针指向时,如若需要释放,仅仅需要赋值nullptr即可使其引用计数减1,而不用担心显示delete后在其他模块的指针失效。先写点简单操作。 相关函数,仅限shared_ptr相关,不包括与weak, ...
分类:
其他好文 时间:
2019-01-27 00:24:34
阅读次数:
228
2019-01-26 16:06:35 数组名是数组这种类型的变量名,所以对数组名取地址是取的整个数组的地址,所以&a+1自然要跨过整个数组的长度,本题即跨过2*5 = 10个int的长度。 有了上述概念,再来分析这道题,int *ptr = (int *)(&a+1),p此时指向的地址应该是a[1 ...
分类:
编程语言 时间:
2019-01-26 17:06:47
阅读次数:
204
来自博客:https://www.cnblogs.com/lzpong/p/6188034.html 多线程程序经常会遇到在某个线程A创建了一个对象,这个对象需要在线程B使用, 在没有shared_ptr时,因为线程A,B结束时间不确定,即在A或B线程先释放这个对象都有可能造成另一个线程崩溃, 所以 ...
分类:
其他好文 时间:
2019-01-25 16:06:48
阅读次数:
205
算法描述: Given a linked list, swap every two adjacent nodes and return its head. Example: Note: Your algorithm should use only constant extra space. You ...
分类:
其他好文 时间:
2019-01-25 15:06:14
阅读次数:
167