error C2661: “std::vector<_Ty>::resize”: 没有重载函数接受 0 个参数

hamigua_12 2013-03-07 03:02:28
本来运行好好的,没有错误,结果,我把opencv2.1换成opencv2.0,所有设置都改好后,第26行出现错误:
error C2589: “(”: “::”右边的非法标记
error C2143: 语法错误 : 缺少“)”(在“::”的前面)
error C2661: “std::vector<_Ty>::resize”: 没有重载函数接受 0 个参数
1> with
1> [
1> _Ty=std::pair<cv::Point,float>
1> ]
error C2059: 语法错误 : “)”
	inline std::vector< std::pair<Point, float> > getVotes() const
{
if(buffered.size() > 0)
return buffered;

std::vector< std::pair<Point,float> > ret;
float avg = static_cast<float>(numPos)/(MapSize*MapSize);

for(int x = 0; x < MapSize; x++)
{
for(int y = 0; y < MapSize; y++)
{
float val = voteMap.at<float>(y, x);
if(val > avg)
{
int voteX = static_cast<int>(round((x - MapSize/2.0f) * MapStep));
int voteY = static_cast<int>(round((y - MapSize/2.0f) * MapStep));

ret.push_back( std::make_pair( Point(voteX, voteY), probPos * val / numPos ));
}
}
}

std::sort(ret.begin(), ret.end(), sortVotesDesc);
// ret.resize( std::min(10, (int)ret.size()) );
ret.resize( std::min( 10, (int)(ret.size()) ) );
buffered = ret;

return ret;
}
};
...全文
955 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
hamigua_12 2013-03-07
  • 打赏
  • 举报
回复
引用 4 楼 rocktyt2 的回复:
引用 3 楼 hamigua_12 的回复:引用 2 楼 rocktyt2 的回复:std::min外面加个括号试试(std::min) 如果这样改能正常,那就是std::min和库里面的min宏名字冲突了 呵呵,真是这样啊,多谢多谢!难道是跟opencv2.0中的冲突了?之前用opencv2.1就没事windef.h里有定义max和min宏,可能opencv2.0有……
嗯嗯 ,学习了,呵呵,多谢啊
rocktyt 2013-03-07
  • 打赏
  • 举报
回复
引用 3 楼 hamigua_12 的回复:
引用 2 楼 rocktyt2 的回复:std::min外面加个括号试试(std::min) 如果这样改能正常,那就是std::min和库里面的min宏名字冲突了 呵呵,真是这样啊,多谢多谢!难道是跟opencv2.0中的冲突了?之前用opencv2.1就没事
windef.h里有定义max和min宏,可能opencv2.0有包含这个头文件 如果想显式禁用这两个宏,可以这样 #define NOMINMAX 也有可能2.1定义了上面的这个
hamigua_12 2013-03-07
  • 打赏
  • 举报
回复
引用 2 楼 rocktyt2 的回复:
std::min外面加个括号试试(std::min) 如果这样改能正常,那就是std::min和库里面的min宏名字冲突了
呵呵,真是这样啊,多谢多谢!难道是跟opencv2.0中的冲突了?之前用opencv2.1就没事
rocktyt 2013-03-07
  • 打赏
  • 举报
回复
std::min外面加个括号试试(std::min) 如果这样改能正常,那就是std::min和库里面的min宏名字冲突了
hamigua_12 2013-03-07
  • 打赏
  • 举报
回复
第25行是之前的代码,由于编译输出说它有错误,我就改成第26行的样子,但是还是有错,真实莫名其妙啊
内容概要:本文围绕间歇性光伏出力条件下48V直流母线电压的稳定控制与储能系统双向充放电的闭环调控体系展开深入研究,系统探讨了光伏阵列非线性输出特性与锂离子电池储能系统在离网直流微网中的能量均衡建模方法及分层控制策略。通过Simulink平台构建完整的光伏储能直流系统仿真模型,涵盖PV阵列、Boost DC-DC变换器、负载、双向DC-DC变换器及电池系统等关键组件,实现了最大功率点跟踪(MPPT)与储能系统的协同控制,有效应对光照波动引起的功率供需失衡问题。研究采用双PI闭环控制、模型预测控制(MPC)等多种先进控制算法,显著提升了系统的动态响应速度与直流母线电压稳定性,并实现了储能系统在削峰填谷中的优化运行,对于增强离网微网的供电可靠性与能源利用效率具有重要理论价值和工程意义。; 适合人群:具备电力电子、新能源系统或自动控制等相关领域基础知识的研究生、科研人员,以及从事微电网、光伏储能系统开发与设计的工程技术人员。; 使用场景及目标:① 构建适用于离网场景的光伏储能系统Simulink仿真模型;② 实现间歇性光照条件下48V直流母线电压的精确稳定控制与储能系统的双向能量管理;③ 研究MPPT控制与储能充放电策略之间的协同机制,提升系统在复杂工况下的运行稳定性与鲁棒性;④ 为微电网能量管理系统的设计、优化与性能验证提供可靠的理论依据和技术支撑。; 阅读建议:建议结合文中所述的Simulink仿真模型与控制算法,亲自动手实践建模与仿真全过程,重点关注MPPT控制策略的实现、双向DC-DC变换器的设计以及电压外环与电流内环构成的双闭环控制结构的参数整定,并通过设置不同的光照强度变化曲线和负载投切工况,全面测试和评估系统的动态响应能力与控制性能。

65,212

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧