C++ 中的error c2784

#include<iostream>#include<vector>usingnamespacestd;vector<int>data;voidplan(intk,int... #include<iostream>
#include<vector>
using namespace std;
vector<int>data;
void plan(int k,int lie,int sum)
{
int a,b,c,d;
if(k-lie>=0)
a=data<k-lie>;
if(k+lie<=sum)
b=data<k+lie>;
if((k-1)-k%lie>=0)
c=data<k-1>;
if((1+k%lie)-(k+1)>=0)
d=data<k+1>;
int temp[4]={a,b,c,d};
int max_temp=0;
for(int i=0;i<4;i++)
{
int num=0;
num=temp[i];
if(max_temp<num)
max_temp=num;
}
int length_way=0;
length_way+=data<k>-max_temp;
if(max_temp>1)
plan(max_temp,lie,sum);
else
cout<<length_way<<endl;
}

在VC++6.0中的错误提示是:
error C2784: 'bool __cdecl std::operator <(const class std::vector<_Ty,_A> &,const class std::vector<_Ty,_A> &)' : could not deduce template argument for 'const cla
ss std::vector<_Ty,_A> &' from 'class std::vector<int,class std::allocator<int> >'
展开
 我来答
千江月success
2013-02-18 · TA获得超过827个赞
知道小有建树答主
回答量:1031
采纳率:100%
帮助的人:915万
展开全部
a=data<k-lie>;

所有的
data<k-lie>全部改成data[k-lie];

<>改成[]
追问
为什么这样改呢?
用下标法访问vector容器中的值,有个例子就是vec,为什么在这里是用的而不是[ ]呢?
追答
那些错了吧,用下标法访问vector容器的值就是用[],或者用vec.at(3);
没见过用vec的
意法半导体(中国)投资有限公司
2023-06-12 广告
单片机,即单片微控制器,也称为单片微型计算机,是将中央处理器(CPU)、存储器(ROM,RAM)、输入/输出接口和其他功能部件集成在一块 在一个小块的集成电路上,从而实现对整个电路或系统的数字式控制。单片机不是完成某一个逻辑功能的芯片,而是... 点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式