CMU 15-445/645 PROJECT #0 - C++ PRIMER

Posted on Aug 4, 2021

记录一下完成 Project #0 的主要思路。

这部分实验目的是熟悉 c++11 内容。

遵循Andy Pavlo要求,代码存放在私有仓库。

环境搭建

按着 bustub README.md文档来就好。

Matrix

  • linear 分配内存,记得初始化赋值为 0。
  • 析构函数函数释放内存。

RowMatrix

  • data_ 分配 T* 数组,将 linear 指针值直接赋值给 data_[i]指针,这样可以共享内存。
  • 也可以为data_[i]分配内存,相应赋值,但是这样就不是共享内存了。
  • 共享内存的话,析构函数只需要释放 data_ 就可以了,父类会自动析构;创建新内存的话,先要释放data_[i]的内存。

RowMatrixOperations

  • 判断运算矩阵纬度是否相等