Login
STL: удалить ненужные символы из строки
157
NEW 20.10.06 16:02
Вот такое у меня получилось:
temp.erase(remove_if(temp.begin(), temp.end(), bind2nd(equal_to<char>(), '-')), temp.end());
Слегка громоздко на вид. Попроще как-то можно? :)
NEW 20.10.06 22:46
in Antwort Simple 20.10.06 16:02
Можно. temp.erase( remove( temp.begin(), temp.end(), '-' ), temp.end() );
22.10.06 19:42
in Antwort scorpi_ 22.10.06 16:51
На нашем? :) Нет проблем.
clr 3
repeat
lr 2,"-"
xfn 4
iff z
lr 1,2
clr 2
endif
ar 3,1
lr 1,2
until z
lr 1,3
NEW 22.10.06 20:17
in Antwort Simple 22.10.06 19:42
Нет чтобы написать что-то нормально-понятное... вида:
char line[], *src, *dst;
src = dst = line;
while(*dst) if(*src !='-') *dst++ = *src++ else src++;
char line[], *src, *dst;
src = dst = line;
while(*dst) if(*src !='-') *dst++ = *src++ else src++;

NEW 22.10.06 21:03
in Antwort Murr 22.10.06 20:17
А нифига, ни один, ни другой пример не воспроизводят всей функциональности моей одной строчки. Ибо она работает с любыми типами.
NEW 22.10.06 21:23
in Antwort scorpi_ 22.10.06 21:03
NEW 22.10.06 21:37
in Antwort Murr 22.10.06 21:23
Ну аргумент будет естественно другой, нужного типа
NEW 22.10.06 21:42
in Antwort scorpi_ 22.10.06 21:37
NEW 23.10.06 09:11
in Antwort Murr 22.10.06 21:42
Так он-то может передать значение как аргумент, а ты как передашь тип? :-D