Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Замечание
Группы интересов сообщества теперь переехали из Yammer в Microsoft Viva Engage. Чтобы присоединиться к сообществу Viva Engage и принять участие в последних обсуждениях, заполните форму " Запрос доступа к финансам и операциям Viva Engage Community " и выберите сообщество, к которому вы хотите присоединиться.
В этой статье описываются функции времени выполнения контейнера.
Эти функции управляют содержимым контейнеров.
conDel
Удаляет указанное количество элементов из контейнера.
Синтаксис
container conDel(container container, int start, int number)
Параметры
| Параметр | Description |
|---|---|
| container | Контейнер для удаления элементов из него. |
| start | Одноуровневая позиция, с которой начинается удаление элементов. |
| число/номер | Число удаленных элементов. |
Возвращаемое значение
Новый контейнер, который не включает удаленные элементы.
Example
static void conDelExample(Args _args)
{
container c = ["Hello world", 1, 3.14];
// Deletes the first two items from the container.
c = conDel(c, 1, 2);
}
conFind
Находит первое вхождение элемента в контейнере.
Синтаксис
int conFind(container container, anytype element)
Параметры
| Параметр | Description |
|---|---|
| container | Контейнер для поиска. |
| элемент | Элемент для поиска. |
Возвращаемое значение
Значение 0 , если элемент не найден; в противном случае — порядковый номер элемента.
Example
static void conFindExample(Args _args)
{
container c = ["item1", "item2", "item3"];
int i = conFind(c, "item2");
int j = conFind(c, "item4");
print "Position of 'item2' in container is " + int2Str(i);
print "Position of 'item4' in container is " + int2Str(j);
}
conIns
Вставляет один или несколько элементов в контейнер.
Синтаксис
container conIns(container container, int start, anytype element, ... )
Параметры
| Параметр | Description |
|---|---|
| container | Контейнер для вставки элементов в. |
| start | Позиция вставки элементов в. |
| элемент | Один или несколько элементов для вставки, разделенных запятыми. |
Возвращаемое значение
Новый контейнер, содержащий вставленные элементы.
Замечания
Первый элемент контейнера задается номером 1. Чтобы вставить после элемента n , начальный параметр должен иметь значение n+1. Оператор также можно использовать += для добавления значений любого типа в контейнер. Например, чтобы создать контейнер, содержащий квадратные значения первых 10 итерации цикла, используйте следующий код.
int i;
container c;
for (i = 1; i < = 10; i++)
{
// Append the square of the index to the container
c += i*i;
}
Example
static void conInsExample(Args _arg)
{
container c;
int i;
c = conIns(c,1,"item1");
c = conIns(c,2,"item2");
for (i = 1 ; i <= conLen(c) ; i++)
{
// Prints the content of a container.
print conPeek(c, i);
}
}
conLen
Извлекает количество элементов в контейнере.
Синтаксис
int conLen(container container)
Параметры
| Параметр | Description |
|---|---|
| container | Контейнер для подсчета количества элементов в. |
Возвращаемое значение
Количество элементов в контейнере. Контейнер conNull не имеет элементов.
Example
static void conLenExample(Args _arg)
{
container c = conins(["item1", "item2"], 1);
for (int i = 1 ; i <= conLen(c) ; i++)
{
print conPeek(c, i);
}
}
conNull
Извлекает пустой контейнер.
container conNull()
Возвращаемое значение
Пустой контейнер.
Example
static void conNullExample(Args _arg)
{
container c = ["item1", "item2", "item3"];
print "The size of container is " + int2str(conLen(c));
// Set the container to null.
c = conNull();
print "Size of container after conNull() is " + int2Str(conLen(c));
}
conPeek
Извлекает определенный элемент из контейнера и преобразует его в другой тип данных, если требуется преобразование.
Синтаксис
anytype conPeek(container container, int number)
Параметры
| Параметр | Description |
|---|---|
| container | Контейнер, из который возвращается элемент. |
| число/номер | Положение возвращаемого элемента. Укажите 1 , чтобы получить первый элемент. Недопустимое число позиции, например -3, 0 или число, превышающее длину контейнера, может привести к непредсказуемым ошибкам. |
Возвращаемое значение
Элемент в контейнере в позиции, указанной параметром number . Функция conPeek автоматически преобразует отображаемый элемент в ожидаемый тип возвращаемого значения. Строки можно автоматически преобразовать в целые числа и реальные числа, а целые числа и реальные числа можно преобразовать в строки.
Example
static void main(Args _args)
{
container cnI, cnJ;
int i, j;
anytype aty;
info("container cnI ...");
cnI = ["itemBlue", "itemYellow"];
for (i=1; i <= conLen(cnI); i++)
{
aty = conPeek(cnI, i);
info(int2str(i) + " : " + aty);
}
info("container cnJ ...");
cnJ = conIns(cnI, 2, "ItemInserted");
for (j=1; j <= conLen(cnJ); j++)
{
aty = conPeek(cnJ, j);
info(int2str(j) + " : " + aty);
}
}
/*** Output pasted from InfoLog ...
Message (10:20:03 am)
container cnI ...
1 : itemBlue
2 : itemYellow
container cnJ ...
1 : itemBlue
2 : ItemInserted
3 : itemYellow
***/
conPoke
Изменяет контейнер, заменив один или несколько существующих элементов.
Синтаксис
container conPoke(container container, int start, anytype element, ...)
Параметры
| Параметр | Description |
|---|---|
| container | Контейнер для изменения. |
| start | Позиция первого элемента для замены. |
| элемент | Один или несколько элементов для замены, разделенных запятыми. |
Возвращаемое значение
Новый контейнер, включающий новые элементы.
Замечания
Первый элемент контейнера задается номером 1.
Example
static void conPokeExample(Args _arg)
{
container c1 = ["item1", "item2", "item3"];
container c2;
int i;
void conPrint(container c)
{
for (i = 1 ; i <= conLen(c) ; i++)
{
print conPeek(c, i);
}
}
conPrint(c1);
c2 = conPoke(c1, 2, "PokedItem");
print "";
conPrint(c2);
}