MAV писал(а):
Итог быстродействие IC равно FTCG.
Только, если и входной тип привести к рабочему типу
------------ Дoбавленo в 14.55:
Tad писал(а):
Всё бы было ничего если бы FTCG не мудрил с val6 := int2str(1);
Я показал, как это убрать
------------ Дoбавленo в 15.00:
Tad, вот FTCG, который работает со скоростью IC
Add(FTCG_Tools,1744119,511,476)
{
}
BEGIN_SDK
Add(EditMultiEx,1754439,21,21)
{
WorkCount=#9:doCompare|
EventCount=#11:onEventData|
VarCount=#5:Value|
Width=622
Height=375
link(doCompare,1251345:doFor,[(63,27)(63,139)])
link(Value,6936366:Value,[(27,263)(503,263)])
}
Add(FT_If_else,7947835,294,140)
{
Type=4
Op2=Integer(11)
link(onTrue,336565:doCompare,[])
}
Add(FT_If_else,336565,350,140)
{
Type=3
Op2=Integer(16)
link(onTrue,16236819:doData,[])
}
Add(FT_If_else,10995659,224,133)
{
Op2=Integer(17)
link(onTrue,16006813:doData,[(282,139)(282,97)])
link(onFalse,7947835:doCompare,[])
}
Add(FT_DoData,16236819,413,140)
{
Data=Integer(0)
link(onEventData,13868993:doWork2,[])
}
Add(FT_DoData,16006813,413,91)
{
Data=Integer(1)
link(onEventData,13868993:doWork1,[(467,97)])
}
Add(HubEx,13868993,463,140)
{
link(onEvent,6936366:doValue,[])
}
Add(FT_Memory,6936366,497,140)
{
Default=Integer(0)
}
Add(FT_For,1251345,105,133)
{
End=100000
Start=1
link(onEvent,3272968:doFor,[])
link(onStop,1754439:onEventData,[(154,146)(154,27)])
}
Add(FT_For,3272968,168,133)
{
End=18
Start=1
link(onEvent,10995659:doCompare,[])
}
END_SDK
И вот его код
Вывод:
login-y срочно работать над оптимизацией своего кода
PS Заключение -- FTCG может делать хороший код, но надо знать, как это делать