*final* class member (D2)
Robert Fraser
fraserofthenight at gmail.com
Wed Feb 13 11:20:11 PST 2008
Denton Cockburn wrote:
> On Wed, 13 Feb 2008 10:59:26 -0500, Denton Cockburn wrote:
>
>> How do I do this? I'm trying to create a class member here that needs to
>> be initialized in the constructor, but cannot be changed later.
>>
>> class A
>> {
>> (const doesn't work) real delegate() dg; // this is that
>> function;
>>
>> this(real delegate() dg) { this.dg = dg; }
>> }
>>
>> class B
>> {
>> real foo() { return 3.5; }
>> }
>>
>> class C
>> {
>> real foo() { return 4.5; }
>> }
>>
>> void main()
>> {
>> auto b = new B;
>> auto a = new A(&b.foo);
>> auto c = new C;
>> a.fitness = &c.foo; // I want this to be an error
>> }
>
> formatting issues:
>
> (const doesn't work) real delegate() dg; // this is that
> function;
>
> should be:
>
> (const doesn't work) real delegate() dg; // this is that function
>
Use "final" :-)
More information about the Digitalmars-d-learn
mailing list