Hur är det med snabbheten hos dessa språk? Det beror helt på vad man menar och i vilka sammanhang. Här finns en oakademisk jämförelse. Läs även kommentarerna de är intressanta: Håller med Niklas om att det för de exempel du ger inte borde bli någon som helst skillnad i prestanda mellan C# och C++ (eller Java för den delen). Mer prestandatester att kika på, jag vet dock inte hur pass relevanta de är.C# VS C/C++ snabbhet?
eller räcker det rent av med Delphi?
Exempelvis läsa igenom en textfil?
Nästade loopar?
mm...
Jag ska lära mig något av dom men har inte bestämmt mig för vilken?
Tack tack
andreasSv: C# VS C/C++ snabbhet?
Ett program som bygger på ett ramverk kommer automatiskt få ett visst overhead, och C# och Java är därför aningen långsammare.
Man kan i regel skriva snabbare kod i C än i C++, men problemet är att vissa tunga operationer blir effektivare ju mer abstrakta de skrivs.
Stränghanteringen är till exempel effektivare i C++ än i C på många sätt, trots att C++-strängar är mer komplexa.
Man kan säga så här om både de exemplen du gav; kompilatorerna är kassa om de inte kan göra det lika snabbt i alla de språken. Det handlar mycket oftare om algoritm än om språk i såna här sammanhang.
Sen är ju frågan hur stor roll effektiviteten spelar. I regel så spelar det inte så stor roll, om det inte är långa krångliga operationer, och då behöver man oftast försöka optimera på annat vis ändå.Sv: C# VS C/C++ snabbhet?
http://www.devhood.com/tutorials/tutorial_details.aspx?tutorial_id=203
Jag blir lite osäker när du säger att du vill lära dig antingen C# eller C/C++
Du har satt att du kan vb.net ganska bra (4 pinnar) så varför då lära dig C#? det enda ska skilja sig är ju rent syntaxmässigt (plus lite andra grejer). Det intressanta med .Net språken är ju ramverket, inte vilket språlk man skriver i.
Om du skall skriva nåt som är väldigt resurskrävande eller där du verkligen måste jaga millisekunder så är väl c/c++ ett betydligt bättre val.
Lite tankar bara.Sv: C# VS C/C++ snabbhet?
Prestanda beror ofta till slut på hur lång tid någon extern kommunikation tar; t.ex. databas läsning, skriva/läs fil, skicka HTTP request. Eftersom alla externa kommunikationer effektivt sabbar den mest optimerade maskinkodsloop så är de fall då språkspecifik prestanda spelar roll ganska få.
Av de applikationer som är kvar, dvs de som ej har extern kommunikation, så beror prestande i dessa i många fall av vilken algoritm man väljer för att lösa problemet.
I de få fall som är kvar, tex rena beräkningsprogram, så finns det skillader mellan olika språk. Du kan tex få C++ att räkna lite (men inte så mycket har jag för mig) snabbare än C#, detta var resultatet av ett fraktal test jag göra för en tid sedan.
Sedan håller jag även delvis med Johan om att skillnaderna mellan VB.NET och C# i syntax inte är så stora, men det är nog faktiskt svårare att gå VB.NET->C# än tvärtom. Detta pga att VB.NET fortfarande har en hel hög med VB.NET specifika funktioner (som funkar precis som VB6) och att du därför inte alltid vet hur man gör i .NET, vilket man måste veta i C#.
Jag tror däremot inte att du kommer behöva använda C++ ur prestandasynpunkt, eftersom du kan skrämma upp C#/.NET ganska rejält. Det som jag tror hindrar C++ generellt sett idag är att så få behärskar det, detta leder till ett underhålls- och vidareutvecklingsproblem som skapar stort motstånd mot C++. Visst är väl C++ bättre i rå beräkning (fast inte så mycket snabbare än C# om jag minns rätt), men jag anser inte att det är värt att lära det sig enbart av detta skäl.
/MattiasSv: C# VS C/C++ snabbhet?
http://dada.perl.it/shootout/