PureBasic - форум

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » PureBasic - форум » PureBasic для Windows » Улучшение справки


Улучшение справки

Сообщений 61 страница 90 из 126

61

newJS написал(а):

ненадо мне расказывать про css

Ну а зачем тогда критиковать, если проблема только от того кто выложил? Если показ как сделать не нужен...

newJS написал(а):

а для распаковки всё же лучше htn2chm использовать

аура что ли лучше? htn2chm только пакует компактнее на 20-30%, а распаковка у них одинаковая.

Залил ещё видео с перепаковкой дополнительной справки и примером как добавлять новые функции.

0

62

осёл ругается на кавычку и акелла красит не то что нужно
Reference\instruction_tables.htm

Код:
 var szHTML=
  "<html><head><style>.clScroll {font:8pt Courier New;color:"+c_rgszClr[6]+";cursor:default;line-height:10pt;}"+
  ".clScroll2 {font:10pt Arial;color:"+c_rgszClr[6]+";cursor:default;line-height:11pt;}</style>
<link href="../style.css" rel="stylesheet" type="text/css">
<script language="javascript" src="../external.js" type="text/javascript"></script>
</head>"+
  "<body onclick=\"event.returnValue=false;\" ondragstart=\"event.returnValue=false;\" onselectstart=\"event.returnValue=false;\" bgcolor="+c_rgszClr[4]+" topmargin=0 leftmargin=0><table cellpadding=0 cellspacing=0 width=100%>"+
  "<tr><td colspan=6 height=1 bgcolor="+c_rgszClr[2]+"></td></tr>"+
  "<tr><td style=\"font:1pt\">&nbsp;<td>"+
  "<td valign=top id=tdScroll class=\"clScroll\" onclick=\"parent.fnFastScrollTabs(0);\" onmouseover=\"parent.fnMouseOverScroll(0);\" onmouseout=\"parent.fnMouseOutScroll(0);\"><a>&<font class="S5">#171</font>;</a></td>"+
  "<td valign=top id=tdScroll class=\"clScroll2\" onclick=\"parent.fnScrollTabs(0);\" ondblclick=\"parent.fnScrollTabs(0);\" onmouseover=\"parent.fnMouseOverScroll(1);\" onmouseout=\"parent.fnMouseOutScroll(1);\"><a>&lt</a></td>"+
  "<td valign=top id=tdScroll class=\"clScroll2\" onclick=\"parent.fnScrollTabs(1);\" ondblclick=\"parent.fnScrollTabs(1);\" onmouseover=\"parent.fnMouseOverScroll(2);\" onmouseout=\"parent.fnMouseOutScroll(2);\"><a>&gt</a></td>"+
  "<td valign=top id=tdScroll class=\"clScroll\" onclick=\"parent.fnFastScrollTabs(1);\" onmouseover=\"parent.fnMouseOverScroll(3);\" onmouseout=\"parent.fnMouseOutScroll(3);\"><a>&<font class="S5">#187</font>;</a></td>"+
  "<td style=\"font:1pt\">&nbsp;<td></tr></table></body></html>";

0

63

newJS
А вообще нужны ли эти инструкции по процессору в справке? Они настолько узкоспециализированные, что у меня мелькала мысль не вырезать ли эти 8 Мб файлов. По началу мне казалось что это какая то реклама процессоров. Потом я понял что это для разработчиков ASM, которые знают язык в совершенстве и просматривают в этой документации команды поддерживаемые процессорами, но нам это недопурибейсиковцам (по крайней мере мне) как до Пекина на корячках, тут у меня три темы мелькают перед глазами изучить спрайты, 3D, параллельно с написанием 2-х программ (жизненно необходимых), подписаться в самозанятые и выложить на русторе пару игр и прог, посмотреть что из этого выйдет. А ты пытаешься ради красоты, чтобы было исправить никому не нужный текст. Когда придёт время нужные люди всё исправят для себя, не нужно забирать у них работу. Я вот не против примеры бы хорошие воткнуть, больше пользы будет, но чтобы их воткнуть надо в совершенстве знать раздел, те же спрайт или 3D. Нужны такие примеры, чтобы вставил их в IDE и хотелось бы дорабатывать. А то зайдёшь в раздел, а там ни одного примера. Вон jacdelad три дня пытается дым сделать из раздела частиц, а пример на 30 строк (без коментов) вполне в справку можно воткнуть, или урезать чуть-чуть.

0

64

Я как-то пропустил момент, а откуда в справке вообще эти ассемблерные инструкции взялись? Вроде как в официальной справке такого нет.

0

65

Smitis
Точно нет. Посмотрел справку 6.10, потом вернулся к началам 5.62, 5.70, ни в одной из них нет этого... удалю у себя тоже. Так если честно, смотрел оригинальные страницы и модернизированные, уж слишком они многословны и оригинальный контент перенесён вниз или между строк. Я принципиально за то чтобы сначала идёт оригинальный контент, а потом уже от себя с пометкой "от автора перевода". При чём уровни у всех разные, мне всё время приходится искать среди десятка примеров по массивам нужное и не нахожу. Например нужен многомерный массив, забыл как записывать так (2,3) или так (2)(3), причём как объявляется и как доступ к элементу (в AutoIt3 было [2][3], а перечисление [2, 3]) и вот начинаю крутить этот список примеров и вычитывать страницу текста. Хотя можно было по порядку от простейшего к сложным Объявление и доступ, потом двумерный, потом редко используемый многомерный, потом усложнённые со структурами - массив структур, потом массив внутри структуры, потом вообще профессиональные моменты, пересоздание, очистка, почему пустой массив с одним элементом, объявление массива без инициализации.
У меня тоже есть интересные вещи (условие, массив, битовый флаг), но всё это можно сделать отдельным разделом и ссылкой на него.
Скомпилировал, файл справки уменьшился на 0,53 Мб (5.94->5.41).

Отредактировано AZJIO (27.04.2024 00:29:02)

0

66

да ни где этого нет, это очень похоже на Серёгину отсебятину

AZJIO написал(а):

А вообще нужны ли эти инструкции по процессору в справке?

да я ковырялся по разным версиям и случайно наткнулся, а ты просил об ошибках сообщать
согласен с тобой, можно удалить
ещё в Серёгиной версии есть один файл с кракозяблами, но у тебя вроде всё в 1251
не помню что за файл, еле нашёл, у него что то с кодировкой не так, если надо найду

0

67

newJS написал(а):

у него что то с кодировкой не так, если надо найду

Найди, но учти, что я делал поиск по "??" двойным вопросам, когда проблема кодировки вместо юникодных символов знак вопроса, я нашёл их всех и исправил. Если ты их видел до этого, то можешь зря потратить время.
Кодировка 1251 помогает сделать поиск, вкладка "Поиск" работает. Потому что поиск работает только в ANSI, в однобайтовой кодировке. Именно поэтому я конвертировал все файлы в эту кодировку а юникоде-символы воспроизвёл с помощью псевдо-кода.

Отредактировано AZJIO (27.04.2024 22:20:00)

0

68

справка от 29.04.24 скачать яндекс, upload.ee
Добавлен раздел "Учебник", куда перенесены из Dim, а также добавил свои описания массивов и синтаксиса рег.выр. Также добавлены ссылки на странице Dim (в шапке) и CreateRegularExpression в "см. также".
Удалены "процессоры"

Ещё перезалил, добавил "Условие" в учебник.

Отредактировано AZJIO (29.04.2024 17:22:22)

0

69

Reference\binary.html   Работа с различными системами счисления
файл без bom, но ты не парься, ты её перекодировал
похоже это тоже Серёгино, как в справке попасть на эту страницу не нашёл
могут ещё такие страницы быть, надо эту папку перепроверить

AZJIO написал(а):

Кодировка 1251 помогает сделать поиск, вкладка "Поиск" работает.

да, chm это такая бяка которая работает только с 1251, у Серёги русский текст не ищется, у тебя ищется

0

70

CreateToolBar()
Федя давно поменял имена функций, выкинул константы типа #PB_ToolBarIcon_New, примеры не работают в новых версиях
исправь

0

71

Можно добавить к имени раздела последнюю версию, с которой этот раздел работает. Вдруг пригодится.

Chr()
Исправить, теперь содержит диапазон работающих символов и суррогатных.

Отредактировано AZJIO (27.09.2024 17:21:28)

0

72

Скачать: яндекс, upload.ee

1. На каждой странице теперь есть ссылка на официальную английскую онлайн-страницу. Это позволит посмотреть изменения, другие примеры, проверить качество перевода на соответствие оригиналу. (ради этого выложил, заметное улучшение)
2. Раздел "Ключевые слова" там подсветил <expression>, в общем то что в синтаксисе внутри <...>. (ручная работа нескольких страниц и даже исправлял текст пару раз)
3. Добавил в Chr() валидные диапазоны юникода, как в оригинале.
4. В историю добавил перевод обновления для версий 6.11 и 6.12. И добавил указанные там константы для OSVersion() и FrameGadget() на их страницы.

+1

73

Почему то до сих пор справка 5.73?

0

74

dibor написал(а):

Почему то до сих пор справка 5.73?

1. Некому встроить новое, да и я уже начал необратимые процессы встраивая в "свою" версию справки поправки и улучшения, я уже не готов повторить эту обработку дважды. Если только кто-то будет улучшать именно "мой" вариант, то да, мы уже будем работать в команде.

2. Потому что небольшое обновление отнимает несколько часов работы. И мне выгодней тратить время на свои программы. Бывает временный позыв, что выбрать, куда потратить время отдыха, потерять время на пустой просмотр фильма (заранее неизвестно) или потратить на что-либо полезное, например справка. Выбор не очевиден, я ведь тоже не робот.

3. Некоторые страницы изменены в разделе 3D-графики, или сетевого программирования, кои я не использую. Мне интересней улучшать разделы до совершенства, которые я использую по 100 раз в сутки. А это а) ключевые слова, б) строковые функции, в) регвыр, ini-файл, гаджеты, карты, списки, файлы, структуры, работа с памятью. И работы там непочатый край, от подсветки примеров и ключевых слов по тексту до вылизывания формулировок. Остальные разделы они уже после основ, то есть перечисленные являются обязательными для других разделов, невозможно не зная разделов структуры и работы с памятью работать над 3D-графикой.

4. Значимые функции добавлены (HTTPTimeout, CustomSortList, CustomSortArray, CompareMap,CompareList, CompareArray, SysTrayIconMenu, DateUTC, CreatePasswordHash, CompareStructure), но нельзя назвать справку 6.12 пока не будет исправлено всё, так что по факту справка у вас 6.12, цифра 5.73 не должна вас пугать. (читайте отсюда и далее)

——————————
Возникли вопросы:
1. DrawingBufferFormat() не найдена через "Указатель", есть только DrawingBufferPixelFormat(), и похоже #PB_PixelFormat_NoAlpha для неё. Ошибка в истории?
2. fingerprint переводится как отпечаток пальца, у Сергея в скобках пояснение (цифровой отпечаток ключа) пока непонятно как это переводить, но каждый раз на страницах справки англ-вставка fingerprint вместо понятного перевода.

Отредактировано AZJIO (09.10.2024 19:27:00)

0

75

Скачать
Новая иконка - ссылка на официальную документацию.

Добавлены функции:
+ConvertDate
+UseDialogOpenGLGadget
+UseDialogScintillaGadget
+UseDialogWebGadget
+UseDialogWebViewGadget

Добавлены константы в функции где они применяются
#PB_Cipher_HMAC
#PB_2DDrawing_NativeText
#PB_EventType_ColumnClick
#PB_PixelFormat_NoAlpha
#PB_EventType_Refresh

11.10.2024
Добавлены функции:
AddPackDirectory
CatchPack

исправления для уже добавленных функций в плане перехода между функций (в нижней строке). Если вклинена функция то у предыдущей и последующей должны изменится переходы на добавленную. Также поправка в index.html, где эти функции должны быть перечислены списком, также в разделе HTTP в список вклинены ссылки с открытием во внешнем браузере. Всё уже сделано, но скомпилирую чуть позже, может ещё пару функций добавлю.
(ссылка обновлена)

План:
CreateAnimatedMaterial
CreateCubicTexture
CreateShader
CreateShaderMaterial
DeriveCipherKey
DraggedItemIndex
ExamineDraggedItems
NextDraggedItem
GetEntityMesh
MaterialAnimation
MaterialShaderAutoParameter
MaterialShaderParameter
MaterialShaderTexture
PackEntryDate
ScaleEntityBone
Text3DX
Text3DY
Text3DZ
VerifyPasswordHash

Skeleton (раздел)
AddSkeletonAnimationKeyFrame
CreateBone
CreateSkeleton
CreateSkeletonAnimation
FinishBoneAssignment
VertexBoneAssignment

Отредактировано AZJIO (26.10.2024 22:20:43)

+1

76

Скачать +WebView (4 функции)
Ещё раз перезалил, забыл в Index.hhk. И попутно в Index.hhk ссылку на List, Map, Array поправил на index, то есть на раздел, а не на NewList, NewMap, Dim, а то как то не логично получается ищешь List, а попадаешь на NewList и т.д.

Отредактировано AZJIO (26.10.2024 22:54:14)

0

77

Описание функций PushListPosition() и PopListPosition() не раскрывают понимание их работы, хотя частично.
Функцию PushListPosition() можно вызвать многократно, при это создаётся список указателей. При этом вызов PopListPosition() устанавливает последний указатель текущим и удаляет его из списка ListPosition(), то есть если мы 3 раза выбрали 2, 5, 8 элемент, то PopListPosition() при вызове сделает текущим 8-й, потом 5-й, потом 2-й. Лишний вызов PopListPosition() приведёт к ошибке, потому что в ListPosition() не будет указателей.

Изначально я думал что PushListPosition() создаёт один указатель и я могу несколько раз вызвать PopListPosition(), который всегда будет задавать то что задал PushListPosition(), но после попытки я сразу понял, что PopListPosition() можно вызвать 1 раз. Допустим у меня 3 цикла и после каждого я хотел бы иметь доступ к текущему, соответственно перед каждым циклом я должен вызвать PushListPosition(), а по завершению цикла вызвать PopListPosition(). То есть мое представление что я должен вызвать PushListPosition() один раз, а потом просто восстановить текущий вызывая три раза PopListPosition() накрылось медным тазом. Перечитываю справку, там есть упоминание (в PushListPosition()), что каждый вызов должен быть уравновешен, но ошибку то вызвала функция PopListPosition(), в которой об это ничего не сказано, и потом понимая что в названии функции присутствует "List", то я понимаю что это список позиций, а не просто запоминание позиции. Явно формулировка не проливает свет, на работу функции, если мне приходится тестировать её поведение.

0

78

PushListPosition()

Syntax

PushListPosition(List())
Description

Remembers the current element (if any) of the list so it can later be restored using PopListPosition(). The position is remembered on a stack structure, so multiple calls to this function are possible.

Описание на 111% простое и объясняющее суть вопроса. Не понять его можно, только в одном случае - не представлять суть понятия stack.

https://ru.wikipedia.org/wiki/Стек

Отредактировано useful (21.12.2024 14:53:59)

0

79

Вот чтобы чел представлял для чего предназначена функция и в том числе что такое стек я и предложил описать работу функции.

0

80

Это предложение описать, что 2 * 2 = 4

0

81

Может тогда удалить описание функции FindString(), оставить только синтаксис, потому что для меня это как 2*2? Ну и до кучи ещё подрезать пару десятков функций? Цель же справки не удалять то, что вам известно и подстраиваться только под вас.

Вот моё предложение по улучшению PushListPosition().

Сохраняет указатель на текущий элемент списка в список позиций, чтобы после цикла ForEach восстановить текущий с помощью PopListPosition().

List()  -  список, текущий элемент которого необходимо запомнить.

Число вызовов PushListPosition() должно завершиться таким же числом вызовов PopListPosition(). Каждый вызов PopListPosition() делает сохранённый элемент списка текущим, при этом удаляя его указатель из списка позиций.

В примечание добавить в начало, не удаляя то что там есть.

Отредактировано AZJIO (21.12.2024 15:52:19)

0

82

https://infourok.ru/urok-po-informatike … 69576.html

0

83

Я знаю общую характеристику понятия стек. Но иногда в общении мне странно упоминание стека, используется ли это для употребления терминов, чтобы показать себя выше других или чел действительно знает, о чём говорит, потому что при попытке употребления этих слов и начале вопросов начинаешь получать вместо ответов плавающее рассуждение и попытку борьбы с автором вопроса по причине не понимания челом использующим этот термин и невозможностью им его объяснить. Поэтому через время я многие вещи не спрашиваю, понимая, что чел сдуется и будет давать ссылки на общее описание понятия стек.
Чтобы не быть голословным выражение "функция помещается в стек" - помещается указатель на функцию? сейчас тут нет контекста и фраза вырвана из него, поэтому надо искать эти слова автора, чтобы понять его. И я боюсь что при попытке столкновения с этими терминами и обращением к вам я опять не увижу борьбу против неудобных вопросов, в которых автор поплывёт. Но ладно, вы заикнулись, я в будущем буду набрасывать вопросы. Но в данном описании проблема в том, что не я жду ответа на вопросы, а предлагаю правильно описать работу функции. То что вы положите указатель в стек или в ячейку памяти, не говорит о том что это список данных, это только место куда будет сохранён указатель. Я же предлагаю раскрыть тему что это не ячейка памяти или стек, а о том что это список, куда будут помещаться указатели при каждом вызове. Опять же "позиция запоминается в структуре стека" здесь нет ключевого смысла сохранение нескольких позиций, здесь сказано что "позиция" не "позиции", "position" не "positions". Разницу в отсутствии "s" вы видите? Опять же по вашей ссылке где в описании "структура стека", а по вашей  ссылке там просто стек. Структура имеет одинаковую длину на всём времени жизни. Как я должен угадать что есть какая то изменяющаяся в размере структура? Но есть список - пурибэйсиковский стандартный, который может быть объявлен в структуре и структура хранит указатель на список, структура не меняется в длину, а функционал списка позволяет управлять этим списком в структуре и что-то мне подсказывает, что этот функционал имеет те же свойства что и у списка пурибэйсиковского или тот же но с небольшой урезкой для работы в рамках этого функционала, то есть хранится указатель на список, хранится размер списка, при доступе к указателю перемещаемся сложением к указателю размера ширины Integer умноженного на число добавленных элементов, или пускай это будет стек, некий внутренний движок выделяющий некий буфер, где вставляются указатели и берутся сверху, пока не достигнет нуля.  Не важно как устроена эта фича пускай будет так или так, в контексте текущей функции важна упрощенная формулировка список позиций, а не просто одна позиция.
Вы заряженный на борьбу со мной, ваша позиция имеет мало смысла, потому что у меня цель сделать справку понятной, у вас цель борьба со мной, из-за чего ваши комментарии не несут полезных вещей для справки.

0

84

Зачем мне с кем то бороться?
Я всего лишь высказал мнение, что текущее описание функции исчерпывающее для любого, кто понимает базовое понятие СТЕК.
И ни каких дополнений не требуется!
Всё.

p.s. части (pop и push) в названиях функций комментируют сами себя https://sysprog.ru/post/komandy-push-i-pop

Отредактировано useful (21.12.2024 17:26:24)

0

85

Вы пытаете давить на знание стек, не смотря на то, что я знаю общее понятие "стек". Справка вызвала непонимание работы функции. То есть по существующему факту, по прецеденту, а не по вашим фантазиям. Если что я считаю себя достаточно знакомым с программированием. Если описание вызывало у меня проблему, то есть по факту, а у вас что есть кроме борьбы со мной? Плюс я сделал объективный разбор, который не основывается на том знаете ли вы как работает функция, а основывается только на отсутствии логически завершённой формулировки, из которой не должно возникать вопросов как работает функция, не создаст ложного представления.
Описание это тоже как программирование, если вы не правильно понимаете бизнес договор, то это может вызвать проблемы, поэтому договор пишется так, чтобы все пункты были ясны для понимания. Вот поэтому я хочу, чтобы в формулировки отсутствовали лишние слова не несущие смысловой нагрузки, такие как в описании параметра List(), говорящие что нужно создать его с помощью NewList, как будто его можно создать и без этого ключевого слова, опять же его можно создать в структуре с ключевым словом List и есть подозрение что список в структуре также будет работать с функциями PushListPosition(), PopListPosition(), то есть как бы формулировка ещё не оказалось ложной.

Итак  текст

Код:
Structure Person
	List Num.i()
EndStructure

x.Person

For i = 0 To 11
	AddElement(x\Num())
	x\Num() = i
Next

SelectElement(x\Num(), 5)
Debug x\Num()
PushListPosition(x\Num())

ForEach x\Num()
	Debug x\Num()
Next

PopListPosition(x\Num())
Debug x\Num()

Получаем ещё и ложность описания, список создан с помощью List в структуре, как видим NewList тут вообще нет, а функции PushListPosition(), PopListPosition() работают.

0

86

Всё работает именно так как описано.

Код:
EnableExplicit
Structure Person
	List Num.i()
EndStructure

Define x.Person ; в данном случае по сути срабатывает неявный newlist но это уже другая история к обсуждению не относящаяся.
Define i.i

For i = 0 To 11
	AddElement(x\Num())
	x\Num() = i
	PushListPosition(x\Num())
Next

PopListPosition(x\Num())
Debug x\Num()

PopListPosition(x\Num())
Debug x\Num()

PopListPosition(x\Num())
Debug x\Num()

; ...

Отредактировано useful (21.12.2024 18:07:38)

0

87

useful написал(а):

Всё работает именно так как описано..

Вы видите в моём примере ключевое слово NewList? И прочитайте описание ещё раз, найдите там упоминание NewList.

usefull написал(а):

p.s. части (pop и push) в названиях функций комментируют сами себя

Вообще я считаю что у нас язык PureBasic и я в рамках этого языка не обязан знать другие языки для работы с PureBasic. По желанию вы можете об этом рассказывать, но справка должна описывать свой функционал без использования терминов другого языка.

Не кажется ли вам что текст "You must include the brackets after the list name." более излишен и очевиден по наличию синтаксиса, чем отсутствие тех вещей, что я указал?

Отредактировано AZJIO (21.12.2024 18:09:39)

0

88

AZJIO написал(а):

Изначально я думал что PushListPosition() создаёт один указатель и я могу несколько раз вызвать PopListPosition(), который всегда будет задавать то что задал PushListPosition()

Любому человеку, кто имеет представление о стеке на уровне школьной информатики ( https://infourok.ru/urok-po-informatike … 69576.html ) это не могло прийти в голову.
И не нужно мои реплики воспринимать как нападение.
В моих знаниях куча пробелов, мне трудно представить, что кто то на них указал, а я воспринял как нападение.

0

89

AZJIO, используется классический стек. Ссылку на википедию уже дали.
Работает примерно так (код максимально упрощен без проверок корректности данных).

Код:
Structure TestList
  List DataList.i()  ; Наши данные.
  List StackList.i() ; Служебный список-стек.
EndStructure

MyList.TestList

Procedure Push_ListPosition(*l.TestList)
  AddElement(*l\StackList())
  *l\StackList() = ListIndex(*l\DataList())
EndProcedure

Procedure Pop_ListPosition(*l.TestList)
  SelectElement(*l\DataList(), *l\StackList())
  DeleteElement(*l\StackList())
EndProcedure

For i=1 To 10
  AddElement(MyList\DataList())
Next

SelectElement(MyList\DataList(), 4)
Push_ListPosition(MyList)
SelectElement(MyList\DataList(), 8)
Push_ListPosition(MyList)
SelectElement(MyList\DataList(), 2)

Debug ListIndex(MyList\DataList())
Pop_ListPosition(MyList)
Debug ListIndex(MyList\DataList())
Pop_ListPosition(MyList)
Debug ListIndex(MyList\DataList())

Можно также сделать через указатель на элемент списка.

Код:
Structure TestList
  List DataList.i() ; Наши данные.
  List *StackList() ; Служебный список-стек.
EndStructure

MyList.TestList

Procedure Push_ListPosition(*l.TestList)
  AddElement(*l\StackList())
  *l\StackList() = @*l\DataList()
EndProcedure

Procedure Pop_ListPosition(*l.TestList)
  ChangeCurrentElement(*l\DataList(), *l\StackList())
  DeleteElement(*l\StackList())
EndProcedure

For i=1 To 10
  AddElement(MyList\DataList())
Next

SelectElement(MyList\DataList(), 4)
Push_ListPosition(MyList)
SelectElement(MyList\DataList(), 8)
Push_ListPosition(MyList)
SelectElement(MyList\DataList(), 2)

Debug ListIndex(MyList\DataList())
Pop_ListPosition(MyList)
Debug ListIndex(MyList\DataList())
Pop_ListPosition(MyList)
Debug ListIndex(MyList\DataList())
AZJIO написал(а):

Сохраняет указатель на текущий элемент списка в список позиций, чтобы после цикла ForEach восстановить текущий с помощью PopListPosition().

Думаю правильнее будет

Сохраняет указатель на текущий элемент списка в список позиций, чтобы в дальнейшем восстановить текущий с помощью PopListPosition().

потому что восстановить можно не только после цикла ForEach.

0

90

Пётр написал(а):

в список позиций

Зачем коверкать истину? Сохраняет в стек!!!! Именно так в исходном варианте и написано, именно об этом говорит часть имени функции!!!!!

p.s. и даже не сохраняет, а корректнее - помещает на вершину специально организованного для этого стека.

Отредактировано useful (21.12.2024 19:05:06)

0


Вы здесь » PureBasic - форум » PureBasic для Windows » Улучшение справки