Är Ctype detsamma som typomvandling? Anledningen för att jag frågar är att jag minns att jag läst någonstans att typomvandling påverkar prestandan negativt. Nu är jag inte 100% på alla termer, men... Säg att du har en variabel av typen Object som du vet innehåller ett objekt av typen String, då kan du använda Ctype, eller om du har en variabel av typen x, men du vet att objektet är av typen y, där y är en klass som ärvt av x, då kan du använda ctype. Ja, man gör typomvandling med CType. Det går ju åt några klockcykler i CPUn alltså påverkar det prestandan negativt. Men det handlar väl knappt om mikrosekunder i en modern CPU. Om man har en loop som kanske ska göra en miljon iterationer då undviker man gärna CType. Annars om det sker enstaka gånger då är det försumbart. När man typecastar object kommer inte hela objektet att omvandlas, det är bara pekaren till objektet som konverteras till en annan slags pekare.. (objekten är reference types). Dvs det kostar inte så mycket att typecasta objekt som man kan tro. Det som väl antagligen menas att mycket boxing/unboxing påverkar prestandan negativt. Hej! Även om typkonverteringen kan ta några klockcykler så är det ju mycket möjligt att man tjänar på det i alla fall om variabeln skall användas och bearbetas, t ex i en massa beräkningar. Då är det ju bättre att variabeln är en Double i stället för en boxad Double (Object).Ctype detsamma som typomvandling?
Sv: Ctype detsamma som typomvandling?
Sv: Ctype detsamma som typomvandling?
Sv: Ctype detsamma som typomvandling?
Sen är är det ju också så att "premature optimization is the root of all evil" ifall jag får våldföra mej så på ett citat.Sv: Ctype detsamma som typomvandling?
Har läst någonstans att Directcast är att föredra framför CType, då denna är snabbare.
Om man vet att typen man skall konv. ärver/implementerar (interface) av samma typen man vill konv till skall man använda Directcast(obj, type).
/JohanSv:Ctype detsamma som typomvandling?
M a o att optimera kod genom att INTE typkonvertera till rätt typ tror jag är fel väg i de flesta fall. Per default bör man skriva vacker, lättläst, strongly typed kod och så kan man krångla till koden och optimera och trimma när man har ett verkligt prestandaproblem. Inte förrän dess...