В STL есть обобщённый алгоритм sort. Не знаю, как называется заголовок с этой функцией в Borland C++ 6, в современных версиях он находится в заголовке algorithm. Для того, чтобы использовать эту сортировку для упорядочения по одному из полей, нужно написать фукнцию/функтор для сравнения cOpenListItem.
Что-то типа
#include <vector>
#include <algorithm>
class cOpenListElem{
public:
// ...
int nFCost;
// ...
static bool less(const cOpenListElem& left, const cOpenListElem& right){
return left.nFCost < right.nCost;
}
};
void foo(){
std::vector<cOpenListElem> OpenList;
// ...
std::sort(OpenList.begin(), OpenList.end(), cOpenListElem::less);
}
Код не проверял, инклуды в соответствии со стандартом, и организовать можно немного по-другому - просто как вариант (возможно, лучше использовать специализацию std::less для cOpenListElem).