新微赢技术网
标题:
新学C++,有个问题
[打印本页]
作者:
专属天使
时间:
2009-11-3 23:46
标题:
新学C++,有个问题
才开始看C++.照着书敲了一段程序.结果是"v' : undeclared identifier"说是有个错误.我不大懂.大哥帮帮忙吧.谢谢
程序:
#include<iostream>
using namespace std;
class ARR
{
int m;
int a[100];
public:
ARR(int x[],int size)
{
m=size;
for(int i=0;i<m;i++)
a[i]=x[i];
}
void delsame();
void show()
{
for(i=0;i<m;i++)
{
cout<<a[i]<<"\t";
if((i+1)%5==0)
cout<<edl;
}
cout<<endl;
}
};
void ARR::delsame()
{
int i,j;
for(i=0;i<m-1;i++)
{
if(a[i]=a[i+1])
{
for(j=i+1;j<m-1;j++)
{
a[j]=a[j+1];
}
m--;
i--;
}
}
}
int main()
{
int b[16]={1,2,2,3,3,4,4,5,6,6,7,7,8,8,9,10,10}
ARR v(b,sizeof(b)/sizeof(b[0]));
v.show();
v.delsame();
v.show();
return 0;
作者:
日-出
时间:
2009-11-3 23:46
好了有点小错
#include<iostream>
using namespace std;
class ARR
{
int m;
int a[100];
public:
ARR(int x[],int size)
{
m=size;
for(int i=0;i<m;i++)
a[i]=x[i];
}
void delsame();
void show()
{
for(int i=0;i<m;i++)
{
cout<<a[i]<<"\t";
if((i+1)%5==0)
cout<<endl;
}
cout<<endl;
}
};
void ARR::delsame()
{
int i,j;
for(i=0;i<m-1;i++)
{
if(a[i]=a[i+1])
{
for(j=i+1;j<m-1;j++)
{
a[j]=a[j+1];
}
m--;
i--;
}
}
}
int main()
{
int b[20]={1,2,2,3,3,4,4,5,6,6,7,7,8,8,9,10,10};
ARR v(b,sizeof(b)/sizeof(b[0]));
v.show();
v.delsame();
v.show();
return 0;
}
作者:
森林的眼泪
时间:
2009-11-3 23:46
你改为这样就没问题了:
#include <iostream>
using namespace std;
class ARR
{
int m;
int a[100];
public:
ARR(int x[], int size)
{
m = size;
for(int i = 0; i < m; i++)
a[i] = x[i];
}
void delsame();
void show()
{
for(int i = 0; i < m; i++)
{
cout << a[i] << "\t";
if((i + 1) % 5 == 0)
cout << endl;
}
cout<<endl;
}
};
void ARR::delsame()
{
int i, j;
for(i = 0; i < m - 1; i++)
{
if(a[i] = a[i + 1])
{
for(j = i + 1; j < m - 1;j++)
{
a[j] = a[j + 1];
}
m--;
i--;
}
}
}
int main()
{
int b[] = {1, 2, 2, 3, 3, 4, 4, 5, 6, 6, 7, 7, 8, 8, 9, 10, 10};
ARR v(b, sizeof(b) / sizeof(b[0]));
v.show();
v.delsame();
v.show();
return 0;
}
作者:
〢●●〢
时间:
2009-11-3 23:46
提个意见,大家贴程序求助或者帮求助者修改程序,特别是整段整段的,最好注释一下,你改动了什么地方,别人的错的什么地方。
谢谢合作,o(∩_∩)o...
作者:
o.筎茈菰箪き
时间:
2009-11-3 23:46
呵呵.知道了.太大意了
作者:
々無極風嘯々
时间:
2009-11-3 23:46
恩.同意.我对着程序查了半天才,找到的.不过,还是谢谢楼上的两位大哥了
作者:
大师傅
时间:
2009-11-3 23:46
谢谢斑竹的建议。。。不过我这个好像又没注意。。下次改。。。呵呵
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
template <class T>
class ARR
{
int m;
vector<T> vec ;
vector<T>::iterator it;
public:
ARR(T a[],int size)
{
vector<T> vec1(a,a+size);
vec=vec1;
}
void delsame()
{
sort(vec.begin(),vec.end());
it=unique(vec.begin(),vec.end());
vec.erase(it,vec.end());
}
void show()
{
for(vector<int>::iterator iter=vec.begin(); iter!=vec.end();iter++)
{
cout<<*iter<<"\t";
}
cout<<endl;
}
};
int main()
{
int b[]={1,2,2,3,3,4,4,5,6,6,7,7,8,8,9,10,10};
ARR<int> v(b,sizeof(b)/sizeof(b[0]));
v.show();
v.delsame();
v.show();
return 0;
}
作者:
独臂神军
时间:
2009-11-3 23:46
不好意思.这个程序的目地是删除序列中的想同的数.但是结果没有把删除的结果显示出来啊
作者:
陪你疯→想你
时间:
2009-11-3 23:46
我的是把删除过后的结果显示出来。。结果是1。。。10
作者:
駃旒_鎏蒗瀦
时间:
2009-11-3 23:46
非常感谢
欢迎光临 新微赢技术网 (http://bbs.weiying.cn/)
Powered by Discuz! X3.2