摘要: 自上而下的语法分析 自上而下 指 从文法的开始符号开始,逐步向下构建出整棵语法树。这样的分析过程会遇到以下问题: 文法左递归:导致分析过程无限循环 回溯问题:在进入错误分支后,需要恢复进入分支前的现场,导致程序设计复杂 构造不会陷入死循环的、不需要回溯的语法分析算法 1. 消除左递归 文法可以消除左 阅读全文
posted @ 2023-03-22 23:20 Franky0705 阅读(85) 评论(0) 推荐(0) 编辑
摘要: 0x00 前言 读完这篇paper,第一感觉是:写得太详细(啰嗦)。好多东西翻来覆去讲了好几遍,最后总长度30页,确定不是水字数的? 但是不得不承认,论文里提到的方法很好。 0x01 Introduction 这篇paper提供了一种学习code的 Distributed Representatio 阅读全文
posted @ 2023-03-22 20:50 Franky0705 阅读(101) 评论(0) 推荐(0) 编辑
摘要: Apache2配置ssl证书 今天上公选课,实在听不进去,就想着把SSL证书配了。最早参考腾讯云的SSL证书安装,结果他给的目录我压根就找不到。于是到Google上搜索,找到了这篇博客,讲的挺好的。我大概把他用中文翻译一下吧。 先开启SSL服务 sudo a2enmod ssl 应该会显示 Modu 阅读全文
posted @ 2022-10-19 20:14 Franky0705 阅读(462) 评论(0) 推荐(0) 编辑
摘要: C++中的const 顶层const和底层const 定义 顶层const代表指针本身是一个常量,而底层const则表示指针指向的对象是一个常量。 int a = 10; const int *p = &a; // 底层const, 不能通过*p改变a,又叫指向常量的指针。 int* const p 阅读全文
posted @ 2022-09-02 21:12 Franky0705 阅读(66) 评论(0) 推荐(0) 编辑
摘要: Swift调用C++函数 背景(可略过) 字节跳动青训营要求写一个华容道游戏,实现 一键求解 的功能。刚开始用Swift写了个暴力的BFS,但是实在是太慢了,我觉得可能是Swift效率太低造成的,所以就想用C++写这个BFS。就这样,我的折磨旅途开始了。 概述 总体来说,Swift调用**C++** 阅读全文
posted @ 2022-08-19 19:04 Franky0705 阅读(869) 评论(0) 推荐(0) 编辑
摘要: 安全编码&代码坏味道 安全编码 引言 安全编码之基本思想 程序在处理外部数据时必须经过严格的合法性校验 禁用不用的端口,尽量减少代码的攻击面 编码在一定范围内应该对不信任模块间采取防御式编程,以此来弥补潜在的人工疏忽 HCSEC黄金规则 多所有的外部数据进行边界和格式检查 对于内部数据需要划分信任域 阅读全文
posted @ 2022-08-11 21:52 Franky0705 阅读(415) 评论(0) 推荐(0) 编辑
摘要: 现代C++与STL vector 建在堆上,可伸缩,可能有预留空间的动态数组 end()只能用于表示位置,不能用于访问元素 vector构造/析构/拷贝/移动时,其中所有元素自动构造/析构/拷贝/移动 增大capacity时,其实是把原vector复制一遍,再把新加入的元素拷贝到新的地址,然后释放原 阅读全文
posted @ 2022-08-11 21:51 Franky0705 阅读(42) 评论(0) 推荐(0) 编辑
摘要: #tinykv学习记录 ##2022.1.14 学习Golang,笔记见《Golang学习笔记》 ##2022.1.15 继续学习Golang,稍微读了一下kv和badger,感觉和刚开始搞OceanBase的时候一样,很懵,不过应该过几天就好了。 ##2022.1.16 摆了一天…… ##2022 阅读全文
posted @ 2022-01-15 21:31 Franky0705 阅读(429) 评论(0) 推荐(0) 编辑
摘要: #Golang学习笔记 ##前言 2022年寒假,为了学习tinyKV课程而学习Golang,就写一些东西来记录一下吧 大括号不能换行是真的难受! ##package package中的函数必须首字母大写才能被其他package调用 package可以有init函数,该函数在package被impo 阅读全文
posted @ 2022-01-14 21:49 Franky0705 阅读(56) 评论(0) 推荐(0) 编辑
摘要: 11.7 Sun 写了一天的date,交上去发现date过了,但basic、select-tables、drop-table、update都挂了……找了半天才发现原来是有一个switch没有break。(可能是原代码的break放到了大括号外面,在修改代码的时候不小心删掉了) date的大概思路是先 阅读全文
posted @ 2021-11-07 20:38 Franky0705 阅读(474) 评论(0) 推荐(0) 编辑