Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2006.10.22;
Скачать: [xml.tar.bz2];

Вниз

C++ рулит   Найти похожие ветки 

 
Kerk ©   (2006-09-28 20:45) [0]

typedef map<string, int> vertex_map;
typedef pair<string, int> vertex_pair;

...

Следующий кусок кода не работает
int CConversionFacts::AddVertex(string &name) {
vertex_map::iterator i;
i = vmap.find(name);


Текст ошибки ;)

Error 1 error C2784: "bool std::operator <(const std::_Tree<_Traits> &,const std::_Tree<_Traits> &)" : could not deduce template argument for "const std::_Tree<_Traits> &" from "const std::string" c:\program files\microsoft visual studio 8\vc\include\functional 143

Кто виноват и что делать?


 
default ©   (2006-09-28 20:58) [1]


> Следующий кусок кода не работает


> и что делать?

наверно, хочешь поговорить об этом?;)


 
wl ©   (2006-09-28 20:58) [2]

vmap что такое?


 
wl ©   (2006-09-28 21:00) [3]

вообще ошибка заключается в том, что при операции сравнения (в find наверняка используется) не удается привести тип строки к нужному


 
Kerk ©   (2006-09-28 21:04) [4]

> [2] wl ©   (28.09.06 20:58)
vmap что такое?

Забыл
vertex_map vmap;


 
wl ©   (2006-09-28 21:18) [5]

вот нашел примерчик. Может стл не умеет строки сравнивать?

struct ltstr
{
 bool operator()(const char* s1, const char* s2) const
 {
   return strcmp(s1, s2) < 0;
 }
};

int main()
{
 map<const char*, int, ltstr> months;
 
 months["january"] = 31;
 months["february"] = 28;
 months["march"] = 31;
 months["april"] = 30;
 months["may"] = 31;
 
 cout << "june -> " << months["june"] << endl;
 map<const char*, int, ltstr>::iterator cur  = months.find("june");
 map<const char*, int, ltstr>::iterator prev = cur;
 map<const char*, int, ltstr>::iterator next = cur;    
 ++next;
 --prev;
 cout << "Previous (in alphabetical order) is " << (*prev).first << endl;
 cout << "Next (in alphabetical order) is " << (*next).first << endl;
}


 
Ketmar ©   (2006-09-28 21:22) [6]

оффтоп:
ужос. и это они называют "языком"...

%-)


 
JudasP   (2006-09-28 21:28) [7]


> Kerk ©   (28.09.06 20:45)  

В том коде, который ты привел нет ошибки.


> wl ©   (28.09.06 21:18) [5]
> Может стл не умеет строки сравнивать?

У std::string есть перегруженный operator<


 
Kerk ©   (2006-09-28 21:35) [8]

> [7] JudasP   (28.09.06 21:28)

Компилятору скажи


 
wl ©   (2006-09-28 21:36) [9]

в с++билдере тоже ошибка не выдается на этом коде...


 
Kerk ©   (2006-09-28 21:41) [10]

У меня VS2005


 
Celades   (2006-09-28 21:43) [11]


> Kerk ©   (28.09.06 21:41) [10]
> У меня VS2005

Тоже нет ошибок. Давай больше кода


 
Kerk ©   (2006-09-28 21:51) [12]

#pragma once
#include <vector>
#include <map>
using namespace std;

class CTest
{
private:
typedef map<string,int> vertex_map;

vertex_map vmap;
public:
bool CTest::AddVertex(string name) {
 vertex_map::iterator i;
 i = vmap.find(name); // если закоментировать, ошибки не будет
 return true;
}
};


 
Celades   (2006-09-28 21:54) [13]


> Kerk ©   (28.09.06 21:51) [12]

А #include <string> кто будет писать? Компилятор не ясновидящий, хотя и умный:)


 
Kerk ©   (2006-09-28 21:55) [14]

> [13] Celades   (28.09.06 21:54)

Компилятор туповат
Ругнуться Undeclared identifier на string ему никто не мешал.


 
Celades   (2006-09-28 21:57) [15]


> > [13] Celades   (28.09.06 21:54)
>
> Компилятор туповат
> Ругнуться Undeclared identifier на string ему никто не мешал.
>

Сам стд::стринг он видел(он просто не в файле "string" определен), а вот operator< нет


 
Cyrax ©   (2006-09-28 22:51) [16]

Ketmar ©   (28.09.06 21:22) [6]
оффтоп:
ужос. и это они называют "языком"...
%-)

А я тащусь...

з.ы.ж. ...особенно с бодуна...


 
Ketmar ©   (2006-09-28 22:53) [17]

>[16] Cyrax(c) 28-Sep-2006, 22:51
>А я тащусь...
некропроктопаталогоанатомия мозга. %-)


 
default ©   (2006-09-28 23:26) [18]

кошмарный код...фу


 
Cyrax ©   (2006-09-28 23:57) [19]

default ©   (28.09.06 23:26) [18]
кошмарный код...фу

Подумалось, вдруг:
что если C#-иста посадить за C++. Что станет с памятью... Вот он настоящий УЖОС.

з.ы. участь кодера - не только прикладное програмирование...


 
default ©   (2006-09-29 00:00) [20]

Cyrax ©   (28.09.06 23:57) [19]
я не C#-ик если что


 
default ©   (2006-09-29 00:05) [21]

я не паскалян, не шарпей, не приплюснутый, .... я Человек!:)


 
Marser ©   (2006-09-29 00:14) [22]

> [19] Cyrax ©   (28.09.06 23:57)
> default ©   (28.09.06 23:26) [18]
> кошмарный код...фу
>
> Подумалось, вдруг:
> что если C#-иста посадить за C++. Что станет с памятью...
> Вот он настоящий УЖОС.

Это всё равно, что с автоматической коробки передач пересесть на ручную.


 
Cyrax ©   (2006-09-29 00:48) [23]

default ©   (29.09.06 00:05) [21]
я не паскалян, не шарпей, не приплюснутый, .... я Человек!:)

А вот я виртуальный coder...
...немного приплюснутый... слева...
...но не от C++, а от C#...
...за его чудесную способность подавлять всякую инициативу программиста...
...за способность вести программиста на поводу у Microsoft"а...
...за способность извилиновыпрямления и щупоизгибания...

з.ы. Кучка (#)



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2006.10.22;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.5 MB
Время: 0.047 c
15-1158828707
VitV
2006-09-21 12:51
2006.10.22
Что будет с COM плсле выхода NET?


2-1159784860
TrainerOfDolphins
2006-10-02 14:27
2006.10.22
Указатель мыши над контролом...


15-1159608940
Footballer
2006-09-30 13:35
2006.10.22
Java-проигрыватель


15-1159886848
ferr
2006-10-03 18:47
2006.10.22
Визальный редактор графов.


2-1160262117
zaza
2006-10-08 03:01
2006.10.22
Компонент вроде listbox





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский