Компьютерный форум
Правила
Вернуться   Компьютерный форум > Форум программистов > Языки программирования > Oberon
Перезагрузить страницу Процедура-функция не может возвращать record или array
Ответ
 
Опции темы Опции просмотра
  (#1 (permalink)) Старый
TPH
Guest
 
Сообщений: n/a
По умолчанию Процедура-функция не может возвращать record или array - 21.09.2007, 16:27

После прочтения документа http://www.oberon.ethz.ch/oreport.html возникло несколько вопросов.

1. Что же все-таки делать с процедурами, которые возвращают record или array. Вроде, компилятор на такие не ругается, но непонятно, как их потом использовать. Кроме того, в пункте 10.1 говорится, что нельзя предать в качестве формального параметра процедуру, которая возвращает массив или рекорд, хотя компилятор опять-таки не ругается на такую конструкцию.

2. Действительно ли нет операции взятия указателя (как * в паскале). То есть, единственный способ дать указателю значение это или new или присваивание другой переменной-указателя?

Скачал WinOberon на том же сайте и пробовал все эти конструкции в нем.
Ответить с цитированием
  (#2 (permalink)) Старый
S.Yu.Gubanov S.Yu.Gubanov вне форума
Member
 
Сообщений: 587
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 03.12.2002
По умолчанию 28.09.2007, 13:54

Цитата:
После прочтения документа http://www.oberon.ethz.ch/oreport.html возникло несколько вопросов.

1. Что же все-таки делать с процедурами, которые возвращают record или array. Вроде, компилятор на такие не ругается, но непонятно, как их потом использовать. Кроме того, в пункте 10.1 говорится, что нельзя предать в качестве формального параметра процедуру, которая возвращает массив или рекорд, хотя компилятор опять-таки не ругается на такую конструкцию.

2. Действительно ли нет операции взятия указателя (как * в паскале). То есть, единственный способ дать указателю значение это или new или присваивание другой переменной-указателя?

Скачал WinOberon на том же сайте и пробовал все эти конструкции в нем.
1) Процедура-функция не может возвращать record или array, это написано в 10.1: The result type of a procedure can be neither a record nor an array. Что касается передачи процедурной переменной, то передаваемая процедура не должна быть локальной (вложенной в другую процедуру), а должна быть определена глобально.

2) Да, операция взятия адреса отсутствует. Всеми указателями управляет сборщик мусора.

Активно работающий форум по оберонам там: http://forum.oberoncore.ru/
Ответить с цитированием
Ads
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
функция или процедура в делфи может вернуть НЕСКОЛЬКО значений? went Вопросы начинающих программистов 1 13.05.2011 19:52
DDR2. Detecting array ... Gosudar Память 18 18.12.2010 14:58
проблема с БД и record andronz Prolog 4 13.11.2010 18:57
Может ли функция возвращать массив GrOb С/С++ 16 12.03.2009 02:05
Световая полоса на дисплее нового ноута. Возвращать? Current Ноутбуки 9 16.08.2008 06:59
610 Code array too small Fir Prolog 2 05.06.2008 18:33
Может ли функция возвращать массив? -=Rain=- Visual Basic 3 07.11.2005 21:39
Нужно после выполнения операции возвращать фокус ввода Начинающий Delphi 2 30.01.2005 19:19
Запись в файл record Fuud Delphi 7 26.11.2004 17:14
Как достать Record из OleVariant moscoul Вопросы начинающих программистов 0 27.08.2004 01:14
Как надо возвращать значения из DLL Vladimir the Red Sunny Visual C++ 8 13.01.2004 14:04
какая функция может преобразовать Canvas Carrot C++ Builder 1 21.08.2003 22:45



Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Нardforum.ru - компьютерный форум и программирование, форум программистов