C++ listy , wyszukiwanie wg początku oraz sortowanie

0

Witam ! Mam problem z sortowaniem elementów listy w C++ , nijak to nie idzie , mógłby ktoś dokładnie opisać zamianę elementów lub ew algorytm do tego ? Druga sprawa to : szukam funkcji w C++ , która sprawdza czy wpisany napis jest początkiem innego. Przykładowo 1) ala ma kota 2) wpisujemy: ala i ma wykryć , że jest początkiem 1.

 #include <iostream>
#include <fstream>
#include <sstream>
using namespace std;

struct Aukcja
{
    string tytul;
    string kategoria;
    string stan;
    int cena;
    string opis;
    string kontakt;
    string zakonczona;
    Aukcja *nastepna; // wskazuje na nastepny element
    Aukcja(); //konstruktor
};
Aukcja::Aukcja(){
    nastepna=0; //konstruktor
}


struct lista
{
    Aukcja *pierwsza; //wskaznik na poczatek listy
    void wyswietl_liste();
    void dodaj_aukcje();
    void usun_aukcje();
    void wyswietl_wedlug_stanu();
    void wyswietl_wedlug_kategorii();
    void wyswietl_wedlug_calej_nazwy();
    void wyswietl_wedlug_przedzialu_cenowego();
    void kup_przedmiot();
    int zliczenie_elementow_listy(); //przyda sie przy sortowaniu
    void sortowanie_od_najmniejszego();
    void zapisanie_listy_do_pliku();
    void odczytanie_listy_z_pliku();
    void edycja_aukcji();
    void wyswietl_wedlug_poczatku_nazwy();
    lista();
};

lista::lista()
{
    pierwsza=0; //konstruktor
}
0

Dobrze , a jest jakaś metoda wbudowana w String , żeby sprawdzić czy napis jest początkiem innego? Przeglądam find , itp , ale póki co nie bardzo mogę znaleźć coś sensownego. Ma mieć to takie zastosowanie: będzie przykładowo aukcja o nazwie "Samolot zdalnie sterowany" i wystarczy wpisać "Samolot" żeby znalazło to. Nazwa jest oczywiście typu String.

0
if(!Sentence.find(Word)) // Sentence zaczyna się z Word

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