Значи ли това, че трябва да променя връщащия низ или нещо подобно? Защото от извикването на JSON той получава акаунта verified204?

sml
person user1742595    schedule 13.10.2012    source източник
comment
Добре дошли! За да направите въпроса и кода си по-четими, опитайте да използвате малко форматиране в публикацията си. Кодът може да бъде форматиран чрез поставяне на 4 интервала преди всеки ред (или чрез маркиране на целия и натискане на бутона „код“ в лентата за редактиране).   -  person AlexFZ    schedule 13.10.2012
comment
Благодаря много за съвета за подчертаване   -  person user1742595    schedule 13.10.2012
comment

Работя по проект, който включва главен swf, който се зарежда в дъщерни swf файлове според изискванията. Има ли начин да се заредят тези дъщерни swf файлове по такъв начин, че конструкторът в техния клас документи да може да бъде извикан с аргументи?

като пример:

Имам дъщерен клас, който се зарежда по време на изпълнение, на който може да бъде даден аргумент за подравняване в неговия конструктор.

Зареждам това по време на изпълнение като клас и го инстанцирам с аргументи в родителския, Master swf.

Очевидно бих могъл да създам вторичен „конструктор“ в детето, което изгражда това, което искам след инстанциране, просто бих искал да знам дали има начин да управлявам инстанцирането на заредени swf файлове и/или да ги заредя в класове, а не в показвани обекти .

  -  person CBusBus    schedule 13.10.2012


Отговори (2)


Ще се опитам да не раздавам твърде много, но ето няколко съвета:

  • Имате нужда от два базови случая - един за [], един за [x].
  • Вашият общ случай трябва да се справи само с два елемента, а не с четири (поставяне на един в първия списък и един във втория)
  • В момента имате split, който връща списък, а не кортеж. Резултатът от първия ви основен случай трябва да бъде ([],[]).
  • В общия случай рекурсивното split xs ще върне кортеж (ys,zs). Трябва да извлечете тези стойности и да изградите получения кортеж по отношение на ys, zs, x1 и x2.

(Редактиране) Няколко точки за вашето преработено решение:

  • Трябва да работите само с два елемента наведнъж - общият случай трябва да бъде split x1::x2::xs
  • split [x,y] се обработва от общия случай - няма нужда от друг основен случай.
  • Липсва ви рекурсивното повикване! Елементите завършват и в двата списъка, защото поставяте xs директно в двете половини на изхода си - първо трябва да го разделите. Започнете с
    let (ys, zs) = split xs in ...
person Nick Barnes    schedule 13.10.2012
comment
Thx 100 пъти.. Това малко изяснява нещата. Отивам да спя в 4 сутринта, ще публикувам решението утре. Много полезно! - person user1742595; 13.10.2012

fun split [] = ([], [])   
  | split [x] = ([x], [])  
  | split (x1::x2::xs) = 
               let 
                 val (ys, zs) = split xs
               in 
                ((x1::ys), (x2::zs))
              end;



val test1split = split [1, 1, 2, 3, 5, 6] = ([1, 2, 5], [1, 3, 6])
val test2split = split [8, 7, 6, 5, 4, 3] = ([8, 6, 4], [7, 5, 3])
val test3split = split [8, 7] = ([8], [7])
val test4split = split [8] = ([8], [])

Решено... Не съм напълно сигурен как, хаха, трябва много повече практика, за да го овладеете. Не можех да го направя без указателите... Благодаря много за помощта Ник Барнс.

person user1742595    schedule 13.10.2012