Avatar billede sandrasmurf Nybegynder
07. august 2007 - 14:14 Der er 2 kommentarer og
1 løsning

Benytte større end, mindre end, og lig med i generisk klasse

Hej eksperter

Hvordan kan jeg få nedenstående klasse til at virke uden at bruge compareTo metoden direkte.

public sealed class Test<T>
        where T : IComparable<T>
    {
        public Test() { }

        public void MyRunningMethod(T startTime, T endTime)
        {
            while (startTime < endTime) // Error. Operand '<' cannot be applied to operands of type 'T' and 'T'
            {
                // Do something
            }
        }
    }

T vil sandsynligvis være int eller long, men måske DateTime også kan komme på tale. Hvordan fortæller jeg compileren at <, >, og = vil være defineret for T.

Allan
Avatar billede arne_v Ekspert
07. august 2007 - 15:42 #1
Jeg mener at du er nødt til at bruge CompareTo.

Operatorer er static methods og sådanne kan et interface ikke angive.
Avatar billede sandrasmurf Nybegynder
12. august 2007 - 16:11 #2
Jeg har været AFK et par dage. Sorry.

Jeg kvitterer med en slat point og siger tak for besvarelsen.
Avatar billede arne_v Ekspert
12. august 2007 - 16:24 #3
så skal jeg lige smide et svar ...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester