26.07.2013 Views

Operativsystem: .............................................................

Operativsystem: .............................................................

Operativsystem: .............................................................

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

}<br />

public static void Main(string[] args)<br />

{<br />

//instantiering giver kompiler fejl !!<br />

}<br />

//Firma f=new Firma();<br />

Console.WriteLine("Firma Data:");<br />

Console.WriteLine(Firma.NAVN);<br />

Console.WriteLine(Firma.ADRESSE);<br />

Console.WriteLine(Firma.TELEFON);<br />

Console.Read();<br />

Hvis klassen Firma forsøges instantieret med new, fås følgende fejl meddelelse:<br />

Arrays og operatorer på objekter (operator overloading):<br />

Objekter kan samles i et array eller tabel helt som et array af heltal eller strenge. Hvis vi har en<br />

klasse Rektangel kan vi altså oprette en samling af rektangler således:<br />

//opret en tabel med 10 pladser til 10 rektangler:<br />

Rektangel[] objekter=new Rektangel[10];<br />

Disse rektangler kaldes så med index operatoren: fx er det første rektangel lig med objekter[0].<br />

Men det er også muligt at sammenligne, sortere og manipulere rektangler med de almindelige<br />

operatorer som +, -, *, < og >.<br />

I C# (og i C++) kaldes dette for operator overloading: den almindelige operator fx + bliver<br />

overloaded - dvs omdefineret til at kunne bruges i en ny sammenhæng.<br />

Fx giver det mening at tale om at et rektangel er mindre end et andet hvis deres areal sammenlignes.<br />

Følgende kode eksempel belyser dette:<br />

//fil:operators.cs<br />

//viser operator overloading på et object - et rektangel<br />

//de almindelige operatorer +, -, *, /, >, >=,

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!