Beetje vage titel, maar hier is mijn probleem:
Ik wil een aantal classes maken met public fields waar ik settings in opsla. Een aantal fields worden gedeeld door alle klassen, dus dacht ik: ik leid ze allemaal af van een basisklasse.
Voorbeeld: (Overigens is dit voorbeeld met eenvoudige types int en string, maar hier kunnen ook ingewikkelder types bij zitten...)
Hoe kan ik nu een Clone() functie aanmaken voor Properties2, die zowel a,b als c cloont?
Als ik een clone van BaseProperties heb en cast naar (Properties2), moet ik vervolgens zelf alle velden van Properties2 er nog bij gaan overzetten, da's ook niet helemaal de bedoeling...
by the way: ik werk met .NET 2.0
Ik wil een aantal classes maken met public fields waar ik settings in opsla. Een aantal fields worden gedeeld door alle klassen, dus dacht ik: ik leid ze allemaal af van een basisklasse.
Voorbeeld: (Overigens is dit voorbeeld met eenvoudige types int en string, maar hier kunnen ook ingewikkelder types bij zitten...)
C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| public class BaseProperties : ICloneable { public int a; public int b; public Object Clone() { return this.MemberwiseClone() } } public class Properties2 : BaseProperties, ICloneable { public string c; } |
Hoe kan ik nu een Clone() functie aanmaken voor Properties2, die zowel a,b als c cloont?
Als ik een clone van BaseProperties heb en cast naar (Properties2), moet ik vervolgens zelf alle velden van Properties2 er nog bij gaan overzetten, da's ook niet helemaal de bedoeling...
by the way: ik werk met .NET 2.0
[ Voor 24% gewijzigd door Gwannoes op 13-01-2011 15:58 ]
Hmmz, hier komt dus m'n sig