Задать вопрос
  • Не работает sort, но явную ошибку в коде не находит. Как исправить?

    @Potok
    Я бы сделал вот так:
    // расчет расстояния между точками
    static double GetDistance(const vector<double> &a, const vector<double> &b)
    {
        double sum = 0;
        for (int i = 0; i < a.size(); i++) sum += pow((a[i] - b[i]), 2);
        return sqrt(sum); 
        // Имеет смысл подумать - а нужно ли нам извлекать корень?
        // Может, нас и квадрат расстояния устроит?
    }
    
    void ShowHeigbor() //для пользователя
    {
        this->lines.sort([this](vector<double> x, vector<double> y)
        {
            return GetDistance(this->input, x) < GetDistance(this->input, y);
        });
        // Зачем засорять пространство имён отдельной функцией compareTo? У нас есть лямбды.
    }