MiniOB参赛记录 Week2

11.7 Sun

  • 写了一天的date,交上去发现date过了,但basic、select-tables、drop-table、update都挂了……找了半天才发现原来是有一个switch没有break。(可能是原代码的break放到了大括号外面,在修改代码的时候不小心删掉了)
  • date的大概思路是先把date存成一个字符串,在往record里写的时候再转成int类型。要改动的地方挺多的:
  • 为什么要把date先当成字符串存储呢?因为害怕他在插入一个字符串类型的数据时,输入了和日期格式相同的字符串,这样就会把CHARS类型判断成DATES类型,引发不必要的麻烦
  • 还有一个问题,在把void *转成int *写进record的时候,需要一个中间变量储存这个int值,如果是个临时变量的话,好像在离开他的作用域就会被销毁,那么指向他的指针好像就会变成野指针(?不确定)。之前在这个地方出了点问题,后来就用了全局变量储存中间值,不过这样好像有点浪费内存。不知道有没有什么解决方法。
posted @ 2021-11-07 20:38  Franky0705  阅读(490)  评论(0编辑  收藏  举报