Форум: "Основная";
Текущий архив: 2004.12.19;
Скачать: [xml.tar.bz2];
ВнизПомогите разобраться в Delphi работает в Buildere нет. Найти похожие ветки
← →
Kolan © (2004-12-06 22:24) [0]В Delphi это проходит:
function TForm1.Cool: TStringList;
var
S: TStringList;
begin
S := TStringList.Create;
S.Add("sdfsd");
Result := S;
end;
procedure TForm1.BitBtn2Click(Sender: TObject);
begin
Memo1.Lines.AddStrings(Cool);
end;
В вот в Buildere не поймо как правильно:
TStringList __fastcall TMainForm::Cool()
{
TStringList *S = new TStringList;
S->Add("sdfs");
Memo1->Lines->AddStrings(S);
return S;
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::BitBtn1Click(TObject *Sender)
{
Memo1->Lines->AddStrings(Cool());
}
Ошибки выдаёт:
Build
[C++ Error] KJavaParserMainForm.cpp(43): E2034 Cannot convert "TStringList *" to "TStringList"
[C++ Error] KJavaParserMainForm.cpp(51): E2034 Cannot convert "TStringList" to "TStrings *"
[C++ Error] KJavaParserMainForm.cpp(51): E2342 Type mismatch in parameter "Strings" (wanted "TStrings *", got "TStringList")
← →
Kolan © (2004-12-06 23:03) [1]Все спят что-ли или вопрос не нравится.
PS Спать охота подсказали бы, я б сделал и спать пошел :)
← →
GuAV © (2004-12-06 23:19) [2]Kolan © (06.12.04 22:24)
function TForm1.Cool: TStringList;
var
S: TStringList;
begin
S := TStringList.Create;
S.Add("sdfsd");
Result := S;
end;
можно заменить на
function TForm1.Cool: TStrings;
var
S: TStringList;
begin
S := TStringList.Create;
S.Add("sdfsd");
Result := S;
end;
и в D будет IMHO лучше и в C наверное поможет.
← →
ЮЮ © (2004-12-07 04:41) [3]Это называется не Cool, а Leak: созданный в функции TStringList никем уничтожен не будет, а ссылка на него - потеряна
procedure TForm1.Cool(Strings: TStrings);
begin
Strings.Add("sdfsd");
end;
procedure TForm1.BitBtn2Click(Sender: TObject);
begin
Cool(Memo1.Lines);
end;
← →
DiamondShark © (2004-12-07 09:42) [4]TStringList* __fastcall TMainForm::Cool()
← →
KADAN © (2004-12-07 09:50) [5]мда... во-первых ЮЮ сказал верно
во-вторых ты объявил ф-цию как TStringList, а она у тебя пытается вернуть указатель на него, нехорошо наверна... (это про си)
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.12.19;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.034 c