 |
BCX Console Demonstration Program S154.bas
|
'===============================================================
' Semi-OOP implementation for BCX by Kevin Diggins Dec 01, 2003
'===============================================================
TYPE
FOO
MyVar
FUNCTION
Squared (
THIS
AS
FOO_CLASS)
AS
INTEGER
FUNCTION
Cubed (
THIS
AS
FOO_CLASS)
AS
INTEGER
FUNCTION
TimesX (
THIS
AS
FOO_CLASS, X AS
INTEGER
)
AS
INTEGER
END
TYPE
DIM
Me AS
FOO : Initialize (
&
Me, 3
)
DIM
You AS
FOO : Initialize (
&
You, 4
)
CLS
PRINT
"================="
PRINT
"Me.Squared "
, Me.Squared (
&
Me)
PRINT
"Me.Cubed "
, Me.Cubed (
&
Me)
PRINT
"Me.TimesX "
, Me.TimesX (
&
Me,100
)
PRINT
"================="
PRINT
"You.Squared "
, You.Squared (
&
You)
PRINT
"You.Cubed "
, You.Cubed (
&
You)
PRINT
"You.TimesX "
, You.TimesX (
&
You,100
)
PRINT
"================="
PRINT
"Changing .MyVar in Me and You"
Me.MyVar =
6
You.MyVar =
7
PRINT
"================="
PRINT
"Me.Squared "
, Me.Squared (
&
Me)
PRINT
"Me.Cubed "
, Me.Cubed (
&
Me)
PRINT
"Me.TimesX "
, Me.TimesX (
&
Me,100
)
PRINT
"================="
PRINT
"You.Squared "
, You.Squared (
&
You)
PRINT
"You.Cubed "
, You.Cubed (
&
You)
PRINT
"You.TimesX "
, You.TimesX (
&
You,100
)
PRINT
"================="
SUB
Initialize (
THIS
AS
FOO_CLASS, b AS
INTEGER
)
WITH
THIS
.MyVar =
b
.Squared =
Squared
.Cubed =
Cubed
.TimesX =
TimesX
END
WITH
END
SUB
FUNCTION
Squared (
THIS
AS
FOO_CLASS)
FUNCTION
=
THIS.MyVar *
THIS.MyVar
END
FUNCTION
FUNCTION
Cubed (
THIS
AS
FOO_CLASS)
FUNCTION
=
THIS.MyVar *
THIS.MyVar *
THIS.MyVar
END
FUNCTION
FUNCTION
TimesX (
THIS
AS
FOO_CLASS, X)
FUNCTION
=
THIS.MyVar *
X
END
FUNCTION