Witam chce zrobić program któremu najpierw podajemy zestaw imion a później chcemy przeszukać ten zestaw taki sposób.
kiedy wpisze ma* to powinien mi wypisać mateusz,marek(i tak dalej) i tak dalej kiedy wpisze ri to wypisze mi Adrian,Adriana(i tak dalej) i ja wpisze *ta to wypisze mi coś takiego Arletta,Arleta (i tak dalej). Na razie chciałem zrobić przez (tylko wariant pierwszy) find_first_of ale wywala mi taki błąd request for member 'find_first_of' in 'first_test.chain_of_signs::sign', which is of non-class type 'std::string [2] {aka std::basic_string<char> [2]}'
#include <iostream>
#include <string>
#include <cstdlib>
using namespace std;
class chain_of_signs //łancuch znaków
{
public:
int column;
string sign[2]; // kolumny i rzędy
string sign_campare;
void set_add_name();
void set_campare/*porównanie*/( string sign_campare );
};
//------------------------------------------------------------------
void chain_of_signs::set_add_name()
{
for ( column = 0; column < 2 ; column++)
{
cout << "Podaj imie: " << endl;
cin >> sign[column];
system( "clear" );
}
}
//------------------------------------------------------------------
void chain_of_signs::set_campare( string sign_campare )
{
for ( column = 0 ; column < 2 ; column++)
{
if ( sign[column] == sign_campare )
{
system( "clear" );
cout << "Mamy te sam imiona " << endl;
break;
}
else if ( sign[column] != sign_campare )
{
system( "clear" );
cout << "Podales inne imiona " << endl;
break;
}
}
}
//-------------------------------------------------------------------
int main()
{
chain_of_signs first_test;
first_test.set_add_name();
cout << "Podaj imie do porównania ";
cin >> first_test.sign_campare;
string::size_type pozycja;
pozycja = first_test.sign.find_first_of("mat");
if ( pozycja != string::npos )
{
cout << "znalazles " << first_test.sign << endl;
}
first_test.set_campare( first_test.sign_campare );
return 0;
}