只需要复制 leetcode 中的测试用例到本地 testcases.txt 文件,复制 Solution() 类到本地 main.cpp 文件,main.cpp 文件能够逐行解析输入变量,从而实现在本地调试的功能。
- 复制 Solution 类到 main.cpp
- 复制测试用例数据到 testcase.txt
- 复制成员函数名
- 运行
-
leetcode中有些题目要求你实现一个自定义的类,对于这类题目,一个类有多个成员函数,输入数据包含了函数名和函数参数。为了演示如何处理这类题目,请使用
multiplefunction.cpp
,对应的测试用例粘贴在在multifunction.txt
, -
所有成员函数最终的调用点在
MemberFunciton::exec
,请在此处自定义输出结果。 -
默认使用
cmake
编译,c++ 标准要求 c++17 及以上。
- 将类中所有成员函数名和成员函数地址对,注册到一个unordered_map,通过检索成员函数名即可找到成员函数地址。
- 为了存储不同的成员函数地址,需要将它们包装
MemberFunction
类,且所有的MemberFunction类都需要继承自同一个MemberFunctionBase
基类。 - 结合元编程中
type_traits
的相关工具,将测试用例中的字符串解析成对应的函数的参数类型。 - 运行每一个测试用例中的函数。
目前支持处理如下的数据类型,这些类型应对大部分测试用例都是可以的。
int
string
vector<int>
vector<char>
vector<vector<int>>
vector<vector<char>>
vector<string>
ListNode*
TreeNode*