对象数组排序算法------------急
我写了一个对象数组,不知道怎么样在类里边调用呢?
请帮我写个简单的能测试对象数组的类?
[解决办法]
#include <cstdlib>
#include <iostream>
using namespace std;
class A{
public:
A(int jj):j(jj){}
int j;
};
void output(A aa[], int lenth)
{
int i;
for (i=0; i <lenth; i++)
{
cout < <aa[i].j < <endl;
}
}
int main()
{
A aa[3]= {A(1), A(2), A(3)};
output(aa, 3);
system( "PAUSE ");
return EXIT_SUCCESS;
}
=================================
参考参考上面这个.是不是你的意思
[解决办法]
不好意思,刚看见。
贴子沉下去了。就不大看了。
如果你下次想给某人留言,有话说的话,可以直接用鼠标点上面那些回复的人的名字,发短信息给他就好了。
呵呵。以上是废话。
我的msn:zpqiong@hotmail.com
可惜我上班上不了。只有下班和周末才能上。
其实有问题,你可以尽管发贴。这里热心人很多。
另外,可以做成成员函数阿。
你再参考参考下面这个。
#include <cstdlib>
#include <iostream>
using namespace std;
class A{
private:
int j;
public:
A(int jj):j(jj){}
void output(A aa[], int lenth)
{
int i;
for (i=0; i <lenth; i++)
{
cout < <aa[i].j < <endl;
}
}
};
int main()
{
A aa[3]= {A(1), A(2), A(3)};
A b(4);
b.output(aa, 3);
system( "PAUSE ");
return EXIT_SUCCESS;
}
[解决办法]
楼主你的排序算法不对吧?你是想用选择法?
我不知道是你不你要的,我在下面都写了,包括你的排序我也改了一下.
void CComputer::selectOrder(CComputer a[],int n)
{
int smallIndex;
for(int i=0;i <n;i++)
{
for(int j=i+1;j <n;j++) //这里改了
{
smallIndex = i;
if(a[i].m_Price <a[j].m_Price)
{
smallIndex = i;
}
else
{
smallIndex = j;
}
swap(a[i],a[smallIndex]);//交换数组元素
}
}
}
void main()
{
CComputer c[4]={CComputer(1),CComputer(2),CComputer(3),CComputer(4)};
//对象数组,共4个对象,但要有一个来调用selectOrder
c[3].selectOrder(c,3); //我选最后一个作为调用,其它三个对象进行排序
}