报错
无法解析的外部命令:往往时在链接时出错,有以下可能:
-
虚函数没有实现
-
写了同一功能的普通函数和函数模板,但普通函数没有实现
heap-buffer-overflow
- 数组越界
- 申请的堆空间不足,注意
new int[10];
是申请10个int
空间,new int(10)
是申请一个int并初始化为10
No matching function for call to ‘max’
-
C++中max()函数中两个参数需是相同类型的
则
return max(arr[i].size()+dfs(arr, i+1, t), dfs(arr, i+1, val));
其中vector.size()方法返回的是unsigned long long (int)
通过cout << typeid(a.size()).name() << endl;
返回y可以验证
所以需在其前加(int)强制类型转换一下
即return max((int)arr[i].size()+dfs(arr, i+1, t), dfs(arr, i+1, val));