Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Français - Português - 日本語
Справка Scilab >> Функции > Встроенные и внешние > funptr

funptr

кодирование примитивов (для экспертов)

Синтаксис

[numptr] = funptr(name)

Аргументы

name

строка, имя примитива

numptr

число внутренней подпрограммы примитива

Описание

Специальная функция (только для экспертов) для получения числа внутренней подпрограммы numptr примитива с именем 'name'. numptr формируется из числа интерфейса fun и числа подпрограммы fin примитива в его интерфейсе как numptr = 1000*fun + fin (fin < 1000). Из numptr можно получить число интерфейса fun = floor(numptr/1000), которое может быть полезным для связи динамического интерфейса с аргументами, переданными по ссылке (см. раздел "Примеры").

Примеры

// Предположим, что вы хотите загрузить некоторые коды через
// предлагаемые средства динамической загрузки с помощью addinter.
// По умолчанию аргументы передаются по значению, но вы можете захотеть
// передавать их по ссылки, для чего нужно сделать следующее
// (name - это scilab-имя одной из подпрограмм в интерфейсе):
//
// addinter(files,spnames,fcts)  // аргументы передаются по значению
// num_interface = floor(funptr(name)/1000)
// intppty(num_interface)  // теперь аргументы передаются по ссылке
//
// Заметьте, что, если вы введете следующее
//
// intppty()
//
// то вы увидите все интерфейсы, работающие по ссылке

Смотрите также

  • clearfun — удаляет примитивы
  • newfun — добавление имени в таблицу функций
  • intppty — установка свойств передачи аргумента интерфейса
  • addinter — new functions interface dynamic link at run time.
Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Tue Feb 14 15:13:37 CET 2017