/
n-dimens
/
pascalabcnet
Обзор
Документация
Войти
/
n-dimens
/
pascalabcnet
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
PABCNetHelp/LangGuide/Classes/classcast.html
60 строк
3 KB
samuraiGH
adding working-tree-encoding attribute (#3325)
07 ноя 2025, 16:12
Не верифицирован
07 ноя 2025, 16:12
cf1fd29
Код
Авторство
О чём код?
<html> <head> <object type="application/x-oleobject" classid="clsid:1e2a7bd0-dab9-11d0-b93a-00c04fc99f9e"> <param name="Keyword" value="Приведение типов в иерархии Предок-Потомок"> </object> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> <title></title> <link rel="StyleSheet" href="../../default.css"> </head> <body> <H1>Приведение типов объектов</H1> <p>Объект производного класса неявно преобразуется к типу базового класса. Обратное преобразование от типа базового класса к типу производного класса может быть выполнено только явно с помощью <a href="../Operations_Expressions/typecast.html">операции приведения типа</a>.</p> <p>Например:</p> <blockquote> <p><code><b>type</b><br> Person =<b> class<br> ...<br> </b> <b>end</b>;<br> Student =<b> class</b>(Person)<br> <b> ...<br> </b> <b>procedure</b> IncCourse; <br> <b>end</b>;<br> ...<br> <b>var <br> </b>p: Person;<br> s: Student;<br> <b>begin</b><br> p := new Student('Иванов',20,3,1); // неявное преобразование к типу базового класса<br> s := Student(p); // явное приведение к типу производного класса <br> <b>end</b>.</code></p> </blockquote> <p>При выполнении приведения к производному классу может возникнуть исключение (если приведение невозможно; например, если в переменной <code>p</code> на момент выполнения операции будет храниться объект типа <code>Person</code>). </p> <p>После приведения к типу производного класса можно обращаться к любым полям, свойствам и методам производного класса:</p> <blockquote> <p><code>s.IncCourse;</code></p> </blockquote> <p>или без присваивания промежуточной переменной:</p> <blockquote> <p><code>Student(p)</code><code>.IncCourse;</code></p> </blockquote> <p>Проверка на возможность приведения к типу производного класса и безопасное приведение к типу производного класса осуществляется с помощью <a href="../Operations_Expressions/isasop.html">операций </a><a href="../Operations_Expressions/isasop.html"><b><code>is</code></b> и <code><b>as</b></code></a>.</p> </body> </html>