<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<div class="moz-cite-prefix">On 30/10/2013 13:49, Xiangrong Fang
wrote:<br>
</div>
<blockquote
cite="mid:CAP93jB2Vw1RBwhj2CFSoW_wmiX7KW2x6KxgMZN8cN+PA1ioziw@mail.gmail.com"
type="cite">
<div dir="ltr">
<div class="gmail_default" style="font-family:courier
new,monospace"><span style="font-family:arial">2013/10/30
Martin </span><span dir="ltr" style="font-family:arial"><<a
moz-do-not-send="true" href="mailto:lazarus@mfriebe.de"
target="_blank">lazarus@mfriebe.de</a>></span><br>
</div>
<div class="gmail_extra">
<div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div text="#000000" bgcolor="#FFFFFF">
<div>
<div class="h5"> <br>
</div>
</div>
I think there is no problem with: <br>
<br>
var <br>
a: array of Integer<br>
begin<br>
A:= obj.proc; <br>
<br>
You are NOT using the type. You are using the value. <br>
</div>
</blockquote>
<div><br>
</div>
<div class="gmail_default" style="font-family:'courier
new',monospace">pascal is strong-typed. You are actually
using type along with its value. e.g.</div>
<div class="gmail_default" style="font-family:'courier
new',monospace"><br>
</div>
<div class="gmail_default" style="font-family:'courier
new',monospace">var</div>
<div class="gmail_default" style="font-family:'courier
new',monospace">
a: array of Double;</div>
<div class="gmail_default" style="font-family:'courier
new',monospace">begin</div>
<div class="gmail_default" style="font-family:'courier
new',monospace"> a := obj.proc;</div>
<div class="gmail_default" style="font-family:'courier
new',monospace">
<br>
</div>
<div class="gmail_default" style="font-family:'courier
new',monospace">This will emit a COMPILE time error
because compiler know these 2 types are not compatible.</div>
</div>
</div>
</div>
<br>
</blockquote>
<br>
Yes. But what I mean is, your code does not refer to the type
directly.<br>
<br>
Since the type is part of value, and the value is public, all of the
type that is accessed through the value is available.<br>
Same as you can access a private field through a public property.<br>
<br>
However the type itself (as referenced by the identifier in the type
declaration), that is the type without a value, is not used by your
code.<br>
You do not declare a new variable of that type.<br>
<br>
</body>
</html>