Skarp programmering med C#.
Rättelser till första upplagan tryckning nr 1.

(En förklaring: rad n betyder från toppen på sidan och rad -n betyder n:te raden nerifrån)
 
sid 169, rad 3:   står: "base class istället för subklass"
                  skall stå: "base class istället för superklass"
 
sid 198, rad -14: står: listan a, skall stå: listan l
 
sid 205, rad -13: ändra till: if (nr >= 1 && nr <= barn.Count)
 
sid 205, rad -7:  ändra till: if (nr >= 1 && nr <= barn.Count)
 
sid 213, rad -10:  står: d(2), skall stå: d1(2)
 
sid 213, rad -9:  står: d2, skall stå: d1
 
sid 213, rad -8:  står: d(2), skall stå: d1(2)
 
sid 246, sista raden i faktarutan:  står: Csub.m, skall stå: Csub
 
sid 271, rad -4:  står:      if (jA.Compare(g1, g2) < 1)
                  skall stå: if (jA.Compare(g1, g2) < 0)
 
sid 278, rad -18: lägg till raden: using System;
 
sid 278, rad -6: står:      MessageBoxButtons.YesNo
                 skall stå: MessageBoxButtons.YesNoCancel
 
sid 279, rad 12: lägg till raden: using System.Windows.Forms;
 
sid 280, rad 1: lägg till raden: using System.Windows.Forms;
 
sid 343, rad 20:  står: Avsluta, skall stå: Avbryt
 
sid 343, rad 22:  står: Avsluta, skall stå: Avbryt
 
sid 392, rad 10: lägg till raden: Size sz = TextRenderer.MeasureText("Cissi", f);
 
sid 408, rad -4: står: yi = -rcos vi, skall stå yi = -rsin vi
 
sid 409, rad -4: står: totDv > 360, skall stå: totDv >= 360
 
sid 423, rad -5:  står: Label, skall stå: Status Label
 
sid 434, rad 10: står: figur 11.11, skall stå: figur 11.10
 
sid 434, rad -15: står: figur 11.11, skall stå: figur 11.10
 
sid 437, rad -6: står: Windows-menyn, skall stå: Arkiv-menyn
 
sid 439, rad -6. stryk ordet 'anropas'
 
sid 439, rad -4, står: gör, skall stå: görs
 
sid 439, rad -4 och -3, står: Ett nytt fönstret, skall stå: Ett nytt fönster