Перейти к содержанию

Помогите с кодом в C++ исправить 1 ошибку


Рекомендуемые сообщения

Всем привет, кто может помочь с кодом 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

Ссылка на комментарий
Поделиться на другие сайты

Он тебе сказал - не знает как обрабатывать такие параметры функции создания строки. Попробуй просто

sListBox1->Items->Strings[sListBox1->ItemIndex].t_str()

И вообще, судя по твоему вопросу, код ты не сам писал. Предполагаю что тут пытаются получить позицию подстроки, или что то такое.

sListBox1->Items->Strings[sListBox1->ItemIndex].Pos("|")-2

С одним кодом без контекста ничего точно не понятно.

Ссылка на комментарий
Поделиться на другие сайты

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 *)

 

Ссылка на комментарий
Поделиться на другие сайты

19 часов назад, Ярослав сказал:

E2285 Could not find a match for 'string::basic_string(wchar_t *,int,int)'

Он у тебя не нашел подходящий под параметры конструктор. Предлагаю не брать чужой код, если не понимаешь, как он работает.

Ссылка на комментарий
Поделиться на другие сайты

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.