{
//--- control the output of the array boundsif(i==m_data_total-1)
break;
i++;
}
while(m_data[j].your_value>p_string)
{
//--- control the output of the array boundsif(j==0)
break;
j--;
}
if(i<=j)
{
t_string=m_data[i];
m_data[i++]=m_data[j];
m_data[j]=t_string;
//--- control the output of the array boundsif(j==0)
break;
j--;
}
}
if(beg<j)
QuickSort(beg,j);
beg=i;
j=end;
}
}
就我个人而言,我在很久以前自己写了一个CStructWrapper类,继承自CObject(CMyObject实际上是一样的,有额外的调试字段),对于排序我使用了一个标准函数。
如果我需要一个结构数组,我就根据这个模板声明一个派生类。在其中,我声明了一个用于比较结构中必要字段的函数。 然后--我使用一个标准的对象数组类,并进行排序。
创建的对象可以使用赋值运算符直接从结构中复制。如果有必要,我就复制它们。
不幸的是,我在OOP方面没有那么多的经验,以至于我无法理解你的代码。
不幸的是,我在OOP方面还没有强大到可以理解你的代码。
它只是一个包含我们结构的类。
还有各种各样的复制操作符,允许在对象和结构之间直接使用赋值符号(=)。
当我需要一个结构数组时--我创建一个这样的对象数组。每一个人都有所需的结构。此外,该类中还定义了一个比较函数,这对于排序和搜索是必要的。所有,然后使用CArrayObj类的 标准函数
不幸的是,我在OOP方面还没有强大到可以理解你的代码。
那么,在没有OOP的情况下实现这个方法。别担心,你可以采用SB的 "快速排序 "方法( 有很多排序算法,有人上传了一个视频,类似于不同算法的可视化,在某些情况下每个人都更好,但这个方法是最佳的,也是最广泛使用的),并为你的结构改变它,这里你应该选择,你将通过结构的哪个字段进行多与少的比较,大约是这样的(比如,通过一些字符串our_value)
不幸的是,我在OOP方面还没有强大到可以理解你的代码。
但至少你善于区分***和***?
不幸的是,现在即使是fxsaber建议的方法也不起作用了。
我正在寻找对一个结构数组进行排序的方法。有没有人有任何工作变体?
我认为这样的语言限制的变通方法是可行的。
但至少你善于区分***和***?
就像人一样......我想你把我和别人搞混了......
人们也是如此......我想你把我和别人搞混了......
这就是问题所在:我认为我是。但我不是。
这就是问题所在,它 "看起来"。但我并不糊涂。
这些 "摩擦 "是怎么回事?这与主题有什么关系?
这些 "摩擦 "的意义何在?这与主题有什么关系?
为什么?是否有一个单独的主题来讨论这个问题?
那么,在没有OOP的情况下实现这个方法。不要走得太远,采取SB的 "快速排序 "方法
我认为这种语言限制的变通方法可以做到。
谢谢你,朋友们!
把它弄到我的洞里。