[C++] string erst setzten und dann festlegen

S

Sanguiletum

Hallo,

ich programmiere grade aus Spaß einen kleinen IRC Bot und stehe jetzt vor einem kleinen Problem. Ich will natürlich nicht, dass jeder ihn benutzen kann, als OP setzten und sowas, und wollte dafür einen Befehl machen, den man dem Bot schickt, dieser Befehl speichert dann die Hostmaske in einem string. Dies sieht dann so aus:
Code:
if((buffer.find("PRIVMSG Feiqing|bot :reg bot")==0 != string::npos))
{
test = buffer;
test = test.substr(test.find('!', 0) + 1, test.find(' ', 0) - test.find('!') - 1);
}

Ich habe dann auch noch einen Befehl gemacht, der die Maske ausgibt, der sieht wie folgt aus:

Code:
if((buffer.find("!test"))!=string::npos)
{
s2u(("PRIVMSG #feiqing :"+test+"\r\n").c_str());
}

s2u ist eine Funktion, die alles an den Server sendet.
Leider gibt !test immer die Hostmaske, des jenigen aus, der !test eingibt. Da genau ist jetzt mein Problem, wie mache ich es sicher, dass der string in test solange gleich ist, bis jemand wieder die Reg Funktion aufruft.
 
Zurück