Sortowanie punktów według ich odległości od początku układu współrzędnych

0

Witam
Pisze program mający posortować punkty (wprowadzone z klawiatury) według ich odległości od początku układu współrzędnych, ustawiając je od najmniejszej odległości. Zrobiłem sobie klasę, ale nie wiem jak ją posortować, próbuję wykorzystać sortowanie bąbelkowe ale program nie działa, wyskakuje błąd kompilacji polegający na tym, że zmienna intOdleg nie została zdeklarowana, ale klasa jest publiczna, zdeklarowanie intOdleg w klasie jako public nie pomaga, proszę o pomoc.

 #include <iostream>
#include <string>
using namespace std;

class punkt
{
    public:
      void przypisz()
      {
          cin>>strNazwa;
          cin>>intpierwsza;
          cin>>intDruga;
      }
    void wypisz()
    {
        cout<<strNazwa;
        cout<<intpierwsza;
        cout<<intDruga;
        cout<<intOdelg<<endl;
    }
    void oblicz()
    {
        intOdelg=(intpierwsza*intpierwsza)+(intDruga*intDruga);
    }
    private:
        string strNazwa;
        int intpierwsza;
        int intDruga;
        long int intOdelg;
};

int main()
{
    short int intliczbaTest;
    cin>>intliczbaTest;
    punkt obiekty[1001];
    for(int i=0; i<intliczbaTest; i++)
        obiekty[i].przypisz();

    for(int i=0; i<intliczbaTest; i++)
        obiekty[i].oblicz();

    //sortowanie
    for( int i = 0; i < intliczbaTest; i++ )
    {
        for( int j = 0; j < intliczbaTest - 1; j++ )
        {
            if( intOdelg.obiekty[ j ] > intOdelg.obiekty[ j + 1 ] )
                 swap( obiekty[ j ], obiekty[ j + 1 ] );

        }
    }

}
4

intOdelg.obiekty[ j ]
No odwrotnie chyba, nie? I intOdelg musi być public.
obiekty[ j ].intOdelg

1 użytkowników online, w tym zalogowanych: 0, gości: 1