Ярослав Опубликовано 28 апреля, 2020 Поделиться Опубликовано 28 апреля, 2020 Всем привет, кто может помочь с кодом Delphi xe8 C++ https://prnt.sc/s7fdz7 Вот код void __fastcall TForm2::Button1Click(TObject *Sender) { /* string b="1234"; string a(b, 1, 2); String strr; size_t tr = strr.Pos("1"); Form2->Caption = a.c_str();*/ //selectpid = bx[ListBox1->ItemIndex]; if (sListBox1->ItemIndex>=0) { string b(sListBox1->Items->Strings[sListBox1->ItemIndex].t_str(),0,sListBox1->Items->Strings[sListBox1->ItemIndex].Pos("|")-2); //Form2->Caption = b.c_str(); Form2->selectpid = StrToInt(b.c_str()); Form1->Label4->Caption = "Состояние"; Form1->Label4->Font->Color = clWindowText; } } // pid:=StrToInt(copy(combobox1.text, -Length(combobox1.text) , Pos('|',combobox1.text)-1 ) //--------------------------------------------------------------------------- вот здесь ошибка string b(sListBox1->Items->Strings[sListBox1->ItemIndex].t_str(),0,sListBox1->Items->Strings[sListBox1->ItemIndex].Pos("|")-2); ЛОГ [bcc32 Warning] W8123 Path '\boost\tr1\tr1' not found - path ignored in option '-I' [bcc32 Warning] W8123 Path '\boost\tr1\tr1' not found - path ignored in option '-I' [bcc32 Warning] Unit2.cpp(50): W8111 Accessing deprecated entity 'UnicodeString::t_str() const' Full parser context Unit2.cpp(42): parsing: void _fastcall TForm2::Button1Click(TObject *) [bcc32 Error] Unit2.cpp(50): E2285 Could not find a match for 'string::basic_string(wchar_t *,int,int)' Full parser context Unit2.cpp(42): parsing: void _fastcall TForm2::Button1Click(TObject *) Failed Ссылка на комментарий Поделиться на другие сайты Поделиться
imaginary Опубликовано 28 апреля, 2020 Поделиться Опубликовано 28 апреля, 2020 Он тебе сказал - не знает как обрабатывать такие параметры функции создания строки. Попробуй просто sListBox1->Items->Strings[sListBox1->ItemIndex].t_str() И вообще, судя по твоему вопросу, код ты не сам писал. Предполагаю что тут пытаются получить позицию подстроки, или что то такое. sListBox1->Items->Strings[sListBox1->ItemIndex].Pos("|")-2 С одним кодом без контекста ничего точно не понятно. Ссылка на комментарий Поделиться на другие сайты Поделиться
Ярослав Опубликовано 28 апреля, 2020 Автор Поделиться Опубликовано 28 апреля, 2020 5 минут назад, imaginary сказал: sListBox1->Items->Strings[sListBox1->ItemIndex].t_str() я заменил на этот и получилась вторая ошибка Спойлер [bcc32 Warning] Unit2.cpp(50): W8111 Accessing deprecated entity 'UnicodeString::t_str() const' Full parser context Unit2.cpp(42): parsing: void _fastcall TForm2::Button1Click(TObject *) [bcc32 Error] Unit2.cpp(52): E2379 Statement missing ; Full parser context Unit2.cpp(42): parsing: void _fastcall TForm2::Button1Click(TObject *) Ссылка на комментарий Поделиться на другие сайты Поделиться
Xipho Опубликовано 29 апреля, 2020 Поделиться Опубликовано 29 апреля, 2020 19 часов назад, Ярослав сказал: E2285 Could not find a match for 'string::basic_string(wchar_t *,int,int)' Он у тебя не нашел подходящий под параметры конструктор. Предлагаю не брать чужой код, если не понимаешь, как он работает. Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения