在build 目录运行 make format ,自动格式化。 在build 目录运行 make check-lint,检查一些语法问题。 自己针对每个函数在本地设计一些测试,写到相关文件(本实验 buffer_pool_manager_test.cpp )中,并且打开测试开关,在 build 文件夹下,编译make buffer_pool_manager_test,运行./test/buff...
make starter_trie_test ./test/starter_trie_test 便可看见project0的本地测试结果 在线测试 登录https://www.gradescope.com/注册 入口代码:PXWVR5 学校选 Carnegie Mellon University 还有一些问题可以看这里https://15445.courses.cs.cmu.edu/fall2022/faq.html登录进去大概你们就知道怎么测试了,总之在线测试比...
在build 目录运行 make format ,自动格式化。 在build 目录运行 make check-lint,检查一些语法问题。 自己针对每个函数在本地设计一些测试,写到相关文件(本实验 buffer_pool_manager_test.cpp )中,并且打开测试开关,在 build 文件夹下,编译make buffer_pool_manager_test,运行./test/buffer_pool_manager_test 贴一...
在build 目录运行 make format ,自动格式化。 在build 目录运行 make check-lint,检查一些语法问题。 自己针对每个函数在本地设计一些测试,写到相关文件(本实验 buffer_pool_manager_test.cpp )中,并且打开测试开关,在 build 文件夹下,编译make buffer_pool_manager_test,运行./test/buffer_pool_manager_test 贴一...
使用clang-format , clang-tidy规范代码(吐槽一下,函数返回值一定要用尾置返回)。cmake文件结构层次明了,cmake可以借鉴移植到自己的项目中。第三方库用到gtest、fmt、argparse等,还有一些自制的工具类。 每个lab本地都会提供一些基础简单的测试,但网上的测试代码比较难并且是未公开的。当所有测试全部通过后,就会进入...
$ make format $ make check-lint $ make check-clang-tidy-p0 调试日志 LOG_INFO("# Pages: %d", num_pages); LOG_DEBUG("Fetching page %d", page_id); 项目介绍 使用支持并发的字典树实现一个键值存储,字典树是一种高效的排序树,用于检索指定键值。这里假设键都是非空的可变长度字符串,但事实上键可...
项目的cmake文件,clang-format , clang-tidy等标准也是非常值得学习的。过程中gdb查看coredump,使用prof生成火焰图分析性能瓶颈。用到了第三方的gtest,fmt,argparse等包,还有一些自制的工具类,整体代码规范、可读性很高。因为今年测试代码已经扒不下来了,所以我也写了一些测试,后续准备多写一些testcase给大家借鉴一下。
make_unique() 多使用make_unique! 养成习惯 reset(q) 将指针设为q。如果q 为空则是置为空。 注意: 由于unique_ptr的特性,我们经常使用一个指针来指向智能指针!!!这样就可以防止对unique_ptr的复制了 unordered_map的应用 erase()删除某个结点 读写锁 这里返回的时候要解锁就ok了测试和提交语法...
可进入leaderboard,与其他学员一较高下。代码规范包括使用clang-format和clang-tidy进行代码美化与检查,确保代码质量。cmake结构清晰,便于项目管理和移植。整个课程经历充满了挑战与成就感,通过leaderboard排名,激励自我进步。课程中遇到的难题,如特定测试用例的复现,为后续学习者提供了参考。
本文将指导你如何在CMU 15445项目中配置VSCode、CLion和clang12环境,尤其针对Linux开发需求,避开GNU编译。对于Windows用户,推荐使用WSL2,它相对于VMware更为便捷。安装步骤如下:安装WSL | Microsoft Learn在Windows上安装cmake和clang-12,以及GDBVSCode虽然轻量,但配置相对繁琐。安装SSH插件以连接本地WSL...