110 lines
4.9 KiB
HTML
110 lines
4.9 KiB
HTML
<html>
|
|
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
|
|
<title></title>
|
|
<link rel="StyleSheet" href="../default.css">
|
|
</head>
|
|
|
|
<body>
|
|
<H1>Îòëè÷èÿ ÿçûêà PascalABC.NET îò Delphi</H1>
|
|
<h3>Äîáàâëåíî</h3>
|
|
<ol>
|
|
<li>Îïåðàöèè <code>+=</code> <code>-=</code> äëÿ ñîáûòèé .NET è äëÿ ïðîöåäóðíûõ
|
|
ïåðåìåííûõ.</li>
|
|
<li>Îïåðàöèè <code>+=</code> <code>-=</code> <code>*=</code> äëÿ öåëûõ è
|
|
<code>+=</code> <code>-=</code> <code>*=</code> <code>/=</code>
|
|
äëÿ âåùåñòâåííûõ.</li>
|
|
<li>Îïåðàöèÿ <code>+=</code> äëÿ ñòðîê.</li>
|
|
<li>Ïîäïðîãðàììû ñ ïåðåìåííûì ÷èñëîì ïàðàìåòðîâ.</li>
|
|
<li>Îïåðàöèÿ <b> <code>new</code></b> äëÿ âûçîâà êîíñòðóêòîðà (<code>ident := new type_name(params);</code>).</li>
|
|
<li>Îïåðàöèÿ <b> <code>new</code></b> äëÿ ñîçäàíèÿ äèíàìè÷åñêîãî ìàññèâà. </li>
|
|
<li>Îïåðàöèÿ <code><b>typeof</b></code> .</li>
|
|
<li>Èñïîëüçîâàíèå <code><b>uses</b></code> äëÿ
|
|
ïîäêëþ÷åíèÿ ïðîñòðàíñòâ èìåí .NET (<span lang="ru">ðåàëèçîâàíî â </span>
|
|
Delphi Prism).</li>
|
|
<li>Âèä äîñòóïà <code><b>internal</b></code> (íàðÿäó ñ <code><b>public</b></code>,
|
|
<code><b>private</b></code>, <code><b>protected</b></code>).</li>
|
|
<li>Èíèöèàëèçàöèÿ ïåðåìåííûõ: <code><b>var</b> a: integer :=
|
|
1</code>;</li>
|
|
<li>Èíèöèàëèçàöèÿ ïåðåìåííûõ: <code><b>var</b> a :=
|
|
1</code>;</li>
|
|
<li>Îáúÿâëåíèå ëîêàëüíûõ ïåðåìåííûõ â áëîêå.</li>
|
|
<li>Îáúÿâëåíèå ïàðàìåòðà öèêëà â çàãîëîâêå öèêëà: <code><b>for</b> <b>var</b>
|
|
i := 1 <b>to</b> 10 <b>do</b></code>, <code><b>foreach</b>
|
|
<strong>var</strong> x <b>in</b> a <b>do</b></code>.</li>
|
|
<li>Îïåðàòîð <code><b>lock</b></code>, îáåñïå÷èâàþùèé ñèíõðîíèçàöèþ ïîòîêîâ.</li>
|
|
<li>Ìåòîäû â çàïèñÿõ.</li>
|
|
<li>Èíèöèàëèçàòîðû ïîëåé â êëàññàõ è çàïèñÿõ.</li>
|
|
<li>Îáîáùåííûå êëàññû (generics).</li>
|
|
<li>Ðåàëèçîâàíû òèïèçèðîâàííûå ôàéëû (â îòëè÷èå îò
|
|
Delphi Prism, ãäå îíè óáðàíû).</li>
|
|
<li>Óïðîùåííûé ñèíòàêñèñ ìîäóëåé.</li>
|
|
<li>Îïèñàíèå ìåòîäîâ âíóòðè èíòåðôåéñà êëàññà èëè çàïèñè.</li>
|
|
<li>Ðåàëèçàöèÿ çàïèñüþ èíòåðôåéñà.</li>
|
|
<li><span lang="ru">Ìåòîäû ðàñøèðåíèÿ.</span></li>
|
|
<li>Ëÿìáäà-âûðàæåíèÿ.</li>
|
|
</ol>
|
|
<h3>Èçìåíåíî</h3>
|
|
<ol>
|
|
<li>Òîëüêî ñîêðàùåííîå âû÷èñëåíèå ëîãè÷åñêèõ âûðàæåíèé.</li>
|
|
<li>Äðóãîé ñèíòàêñèñ <code><b>foreach</b></code>.</li>
|
|
<li>Èíòåðôåéñû <code><b>interface</b></code> â ñòèëå .NET.</li>
|
|
<li>Äðóãîé ñèíòàêñèñ ïåðåãðóçêè îïåðàöèé.</li>
|
|
<li>Ñòàòè÷åñêèå ìåòîäû êëàññîâ âìåñòî êëàññîâûõ ìåòîäîâ. Îòñóòñòâèå òèïà
|
|
<code>TClass</code>.</li>
|
|
<li>Äåñòðóêòîðû îñòàâëåíû ëèøü äëÿ ñîâìåñòèìîñòè è íå âûïîëíÿþò íèêàêèõ
|
|
äåéñòâèé.</li>
|
|
<li>Òèï <code>object</code> -
|
|
ñèíîíèì <code>System.Object</code>.</li>
|
|
<li>Òèï <code>exception</code> -
|
|
ñèíîíèì <code>System.Exception</code>.</li>
|
|
<li>Èíäåêñàöèÿ <code>string</code> ñ 1, äèðåêòèâà ïåðåêëþ÷åíèÿ íà èíäåêñàöèþ ñ 0.</li>
|
|
<li>Ïðîöåäóðà <code>write</code>
|
|
âûâîäèò ëþáûå òèïû.</li>
|
|
<li>Ñòðóêòóðíàÿ ýêâèâàëåíòíîñòü òèïîâ äëÿ ïðîöåäóðíûõ ïåðåìåííûõ, äèíàìè÷åñêèõ ìàññèâîâ,
|
|
òèïèçèðîâàííûõ óêàçàòåëåé è
|
|
ìíîæåñòâ (â Delphi Object
|
|
Pascal - èìåííàÿ ýêâèâàëåíòíîñòü òèïîâ çà èñêëþ÷åíèåì îòêðûòûõ
|
|
ìàññèâîâ).</li>
|
|
<li>Ìíîæåñòâà íà áàçå ïðîèçâîëüíûõ òèïîâ (<code><b>set</b> <b>of</b>
|
|
string</code>).</li>
|
|
<li>Çàïðåò èñïîëüçîâàíèÿ óêàçàòåëåé íà óïðàâëÿåìóþ ïàìÿòü.</li>
|
|
<li>Ïðîöåäóðíûå ïåðåìåííûå (äåëåãàòû) âìåñòî <code><b>procedure of</b>
|
|
object</code>.</li>
|
|
<li>Ñ áåñòèïîâûìè ôàéëàìè <b><code>file</code></b>
|
|
ìîæíî ðàáîòàòü ñ ïîìîùüþ ïðîöåäóð <code>read</code>,
|
|
<code>write</code>.</li>
|
|
<li>Ìàññèâû ìàññèâîâ îòëè÷àþòñÿ ïî òèïó îò äâóìåðíûõ ìàññèâîâ (â ÷àñòíîñòè,
|
|
çàïèñè <code>a[i][j]</code> è <code>a[i,j]</code> íåýêâèâàëåíòíû).</li>
|
|
<li>Ïåðåãðóçêà âûïîëíÿåòñÿ áåç êëþ÷åâîãî ñëîâà <b> <code>overload</code></b>.</li>
|
|
<li>Âñå êîíñòðóêòîðû èìåþò èìÿ <code>Create</code>.</li>
|
|
<li>Àâòîìàòè÷åñêîå óïðàâëåíèå ïàìÿòüþ ñ ïîìîùüþ ñáîðùèêà ìóñîðà (çà
|
|
èñêëþ÷åíèåì óêàçàòåëåé íà íåóïðàâëÿåìóþ ïàìÿòü).</li>
|
|
</ol>
|
|
<h3>Îòñóòñòâóåò</h3>
|
|
<ol>
|
|
<li>Êëþ÷åâûå ñëîâà è äèðåêòèâû <code><b>packed threadvar inline asm exports library unsafe resourcestring dispinterface in out absolute dynamic
|
|
local platform requires abstract export message resident assembler safecall
|
|
automated far near stdcall cdecl published stored contains implements
|
|
varargs default deprecated package register dispid pascal writeonly</b></code>
|
|
è ñâÿçàííûå ñ íèìè âîçìîæíîñòè.</li>
|
|
<li>Ïðèâåäåíèå òèïîâ äëÿ ïåðåìåííûõ: <code>Char(b)</code>
|
|
<code>:=</code> <code>'d'</code>.</li>
|
|
<li>Âîçìîæíîñòü ïðèñâîèòü àäðåñ ïîäïðîãðàììû óêàçàòåëþ <code>pointer</code>.</li>
|
|
<li>Çàïèñè ñ âàðèàíòàìè.</li>
|
|
<li>Ñòðîêè <code>PChar</code>.</li>
|
|
<li>Âîçìîæíîñòü èñïîëüçîâàòü îïåðàöèþ <code>@</code> äëÿ ïðîöåäóðíûõ ïåðåìåííûõ.</li>
|
|
<li>Âàðèàíòíûå òèïû.</li>
|
|
<li>Áåñòèïîâûå ïàðàìåòðû (<code><b>var</b> a; <b>
|
|
const</b> b</code>).</li>
|
|
<li>Îòêðûòûå ìàññèâû (íå ïóòàòü ñ äèíàìè÷åñêèìè!).</li>
|
|
<li>Ìåòîäû, ñâÿçàííûå ñ ñîîáùåíèÿìè (<code><b>message</b></code>).</li>
|
|
<li>Êëàññîâûå ñâîéñòâà.</li>
|
|
<li>Âëîæåííûå îïðåäåëåíèÿ êëàññîâ.</li>
|
|
<li>Êîíñòàíòû-ïîëÿ êëàññîâ.</li>
|
|
</ol>
|
|
</body>
|
|
|
|
</html>
|