Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > std::transform не найден


Автор: azesmcar 8.11.2009, 11:30
Добрый день,

вот такой вот с виду нормальный код выдает ошибку, может я уже заработался и чего-то не замечаю но на студии этот код вполне нормально работает (хотя это мало о чем говорит smile )

Код

#include <algorithm>
#include <cctype>

int main()
{
        std::string result("prefix_");
        std::string str("data");
        std::transform(str.begin(), str.end(), std::back_inserter(result), std::toupper);
}


Цитата

test.cpp: In function Б─≤int main()Б─≥:
test.cpp:9: error: no matching function for call to Б─≤transform(__gnu_cxx::__normal_iterator<char*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::back_insert_iterator<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, <unresolved overloaded function type>)Б─≥


Автор: kemiisto 8.11.2009, 12:05
azesmcar, в этой http://www.ug.cs.usyd.edu.au/~jimmy/docs/type-of-toupper.pdf'ке (~100 KB), вроде как, описана твоя проблема.

Автор: azesmcar 8.11.2009, 15:44
Цитата(kemiisto @  8.11.2009,  12:05 Найти цитируемый пост)
azesmcar, в этой PDF'ке (~100 KB), вроде как, описана твоя проблема. 

оно! smile спасибо.

Автор: andrew_121 8.11.2009, 16:14
azesmcar, Какой компилятор? По выводу похож на GCC, но что-то в нем не так..

Цитата(kemiisto @  8.11.2009,  12:05 Найти цитируемый пост)
в этой PDF'ке (~100 KB), вроде как, описана твоя проблема. 

До конца не дочитал, много букаф.

Я раньше сталкивался в подобной проблемой, делаю так:
Код


#include <string>
#include <algorithm>
#include <cctype>

char mytoupper(char ch) {
    return std::toupper(ch);
}

int main() {
    std::string result("prefix_");
    std::string str("data");
    std::transform(str.begin(), str.end(), std::back_inserter(result), mytoupper);
    
    return 0;
}

Автор: azesmcar 8.11.2009, 17:09
Цитата(andrew_121 @  8.11.2009,  16:14 Найти цитируемый пост)
azesmcar, Какой компилятор? По выводу похож на GCC, но что-то в нем не так..

gcc smile 

Цитата(andrew_121 @  8.11.2009,  16:14 Найти цитируемый пост)
Я раньше сталкивался в подобной проблемой, делаю так:

да я тоже по другому сделал, дело не в этом, хотелось понять почему не работает.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)