[Prog] Comp-eigenschappen: gevaar//// versoepeling type-chec

Forum van 1ste Bachelor Informatica.

Moderator: Praesidium

Krikke
Posts: 29

Comp-eigenschappen: gevaar//// versoepeling type-checking?

Post#1 » Sun Jan 08, 2006 8:28 pm

1.Zijn er compatibiliteitseigenschappen die potentieel "gevaarlijk" zijn, dus onverwachte resultaten kunnen opleveren? Zo ja, geef van elk mogelijk gevaar een voorbeeld.

2.Compatibiliteitsregels geven soms aanleiding tot "versoepeling" van de type-checking. Som zo volledig mogelijk de in Oberon aanwezige compatibiliteitsregels op, en geef aan waarom de "versoepeling" nuttig of belangrijk is.

Any idea? :?

Zijn toch ook wel belangrijke vrage

vooral 2, wa moet ge daar allemaal geve?...

User avatar
Arutha
Posts: 20

versoepleing

Post#2 » Sun Jan 08, 2006 8:31 pm

Die van pointer extensies en record extensies zeker.
Normaal kunde zoiets ni aan elkaar gelijk stelle nu wel.
U basis en extensie hebben compleet andere type specificaties en toch mag da wel. 't geeft fameus wa flexibiliteit na OO toe.
Polymorfisme is daar op gebouwd volges mij

User avatar
Yo_rik
Posts: 69

Post#3 » Sun Jan 08, 2006 8:33 pm

Zo'n gevaarlijke regel is de type-inclusie: ge kunt een LONGINT toekennen aan een REAL, hierbij kan veel nauwkeurigheid verloren gaan.

User avatar
EagleEye812
Posts: 406

Post#4 » Sun Jan 08, 2006 8:47 pm

Da weet ik niet :p maar in de cursus staat wel iets fout/onvolledig bij de compatibiliteitsregels van expressies

die tabel van operators:
Oberon.Report.Text wrote:+ - * numeric numeric smallest numeric type including both operands
/ numeric numeric smallest real type including both operands
De Cursus wrote:+ - * numeric numeric smallest numeric type including both operands
/ numeric numeric smallest numeric type including both operands
da moet dan real zijn e

Krikke
Posts: 29

Post#5 » Sun Jan 08, 2006 8:52 pm

bij deling?
/

als ge 4/2 doet krijgt ge toch gwn shortint? (of was't iets anders da ge bedoelde? :))

User avatar
EagleEye812
Posts: 406

Post#6 » Sun Jan 08, 2006 8:55 pm

Krikke wrote:bij deling?
/

als ge 4/2 doet krijgt ge toch gwn shortint? (of was't iets anders da ge bedoelde? :))
nope, da wordt een real

Code: Select all

	PROCEDURE Test*;
		VAR
			a: INTEGER;
	BEGIN
		a := 4 / 2;
	END Test;
pos 248 err 113 incompatible assignment
[quote="zarry"][url=http://www.winak.be/forum/viewtopic.php?p=12475#12475]wickaaaah! thcikci tschiki paaaauuuuw wicked-original![/url][/quote]

User avatar
j0lle
WOZ
Posts: 396

Post#7 » Sun Jan 08, 2006 9:04 pm

Image

Image

Laten we dit even verder verduidelijken met een paar een-
voudige voorbeelden. Veronderstel:
s: SHORTINT;
i: INTEGER;
l: LONGINT;
r: REAL;
lr: LONGREAL;
dan krijgen volgende uitdrukkingen het weergegeven type:

l MOD s LONGINT
1.0 / s REAL
i - lr LONGREAL
i * r REAL
r DIV i COMPILATIEFOUT!
1 / lr LONGREAL

Krikke
Posts: 29

Post#8 » Sun Jan 08, 2006 9:35 pm

1.0 / s REAL

owki :)
thx, sweer een extra vraag die em WEL mag stelle :mrgreen:

User avatar
EagleEye812
Posts: 406

Post#9 » Sun Jan 08, 2006 10:10 pm

XenoPhobian wrote:Image
Dit is inderdaad de tabel da ge moet leren (uit report.text)

In dit tabelleke staan keiveel fouten in de cursus.
[quote="zarry"][url=http://www.winak.be/forum/viewtopic.php?p=12475#12475]wickaaaah! thcikci tschiki paaaauuuuw wicked-original![/url][/quote]

Return to “1ste Bachelor”

Who is online

Users browsing this forum: No registered users and 2 guests

cron