Lazarus
Home
Help
TinyPortal
Search
Login
Register
Lazarus
»
Forum
»
Programming
»
General
»
questions concerning procedural types
Free Pascal
Website
Downloads
Wiki
Bugtracker
Mailing List
Lazarus
Website
Downloads (Laz+FPC)
Packages (OPM)
FAQ
Wiki
Bugtracker
IRC channel
Latest SVN
Mailing List
Other languages
Foundation
Website
Useful Wiki Links
Project Roadmap
Getting the Source
Screenshots
How to use the forum
About donations (wiki)
Bookstore
Computer Math and Games in Pascal
(preview)
Lazarus Handbook
Search
Advanced search
Recent
[Solved] Accessing variab...
by
ASBzone
[
Today
at 05:03:05 am]
Error Messages
by
OC DelGuy
[
Today
at 04:54:54 am]
[LAMW] is it possible sen...
by
ASBzone
[
Today
at 04:54:25 am]
[Problem solved] Wish: st...
by
funlw65
[
Today
at 02:20:38 am]
File handling, records [p...
by
manahu
[
Today
at 02:19:59 am]
if ImageList
by
jamie
[
Today
at 01:42:12 am]
converting C++ over laz, ...
by
jamie
[
Today
at 01:13:48 am]
Pictures in Forms
by
winni
[
Today
at 12:24:04 am]
[SOLVED] Indicator arrow ...
by
pcurtis
[February 27, 2021, 11:54:02 pm]
MOVED: TChart start posit...
by
trev
[February 27, 2021, 11:05:08 pm]
« previous
next »
Print
Pages: [
1
]
Author
Topic: questions concerning procedural types (Read 233 times)
anonymousstranger
New Member
Posts: 49
questions concerning procedural types
«
on:
January 17, 2021, 02:54:42 am »
1) Given:
Code: Pascal
[Select]
[+]
[-]
Type
TOneArgCcall
=
Procedure
(
Var
X
:
integer
)
;
var
proc
:
TOneArgCcall
;
Procedure
printit
(
Var
X
:
Integer
)
;
begin
WriteLn
(
x
)
;
end
;
begin
Proc
:
=
@
printit
;
end
.
How does one pass a value into printit through proc? I'm kind of fuzzy on how this works.
2)Say you have a procedural type that references a procedure/function in a library. does the procedural type also require the "external" tag?
«
Last Edit: January 17, 2021, 03:05:41 am by anonymousstranger
»
Logged
Blaazen
Hero Member
Posts: 3026
POKE 54296,15
Re: questions concerning procedural types
«
Reply #1 on:
January 17, 2021, 03:22:35 am »
Since you pass variable x by reference (
var
), you have to write:
Code: Pascal
[Select]
[+]
[-]
var
i
:
Integer
;
begin
Proc
:
=
@
printit
;
i
:
=
5
;
Proc
(
i
)
;
end
;
i
can be global variable as well.
Don't know about external keyword.
Logged
Lazarus 2.1.0 r64546 FPC 3.3.1 r40507 x86_64-linux-qt Chakra, Qt 4.8.7/5.13.2, Plasma 5.17.3
Lazarus 1.8.2 r57369 FPC 3.0.4 i386-win32-win32/win64 Wine 3.21
Try Eye-Candy Controls:
https://sourceforge.net/projects/eccontrols/files/
anonymousstranger
New Member
Posts: 49
Re: questions concerning procedural types
«
Reply #2 on:
January 17, 2021, 05:09:13 am »
cool
thanks.
Logged
Print
Pages: [
1
]
« previous
next »
Lazarus
»
Forum
»
Programming
»
General
»
questions concerning procedural types
TinyPortal
© 2005-2018