Thread overview | ||||||||
---|---|---|---|---|---|---|---|---|
|
January 17, 2003 Properties implemented in DLI? | ||||
---|---|---|---|---|
| ||||
Hi guys. I'm playing with D at the moment, it's quite nice. I'm checking out properties, ie.. class Mytest { int tmp; void tp(int newTmp) { printf("assigning tmp\n"); tmp =newTmp;}; int tp() { printf("getting tmp\n"); return tmp;}; } but DLI gives me the following errors test.d(48): Error: cannot implicitly convert int to void(int newTmp) test.d(49): Error: cannot implicitly convert void(int newTmp) to int Is this a problem in my code, lack of implementation in Walter's frontend or a missing section in DLI? If it is a DLI issue could someone point me to a place to look to implement it? Cheers Brad |
January 17, 2003 Re: Properties implemented in DLI? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Brad Beveridge | Does your class really look like that? haven't you forgotten a little thing? did you try to compile the piece you're sending? here the identifiers simply don't match. i've marked them below. Brad Beveridge wrote: > Hi guys. I'm playing with D at the moment, it's quite nice. I'm checking out properties, ie.. > class Mytest > { > int tmp; ^^^tmp!!! > void tp(int newTmp) { printf("assigning tmp\n"); tmp =newTmp;}; > int tp() { printf("getting tmp\n"); return tmp;}; ^^ tp!!! > } > > but DLI gives me the following errors > test.d(48): Error: cannot implicitly convert int to void(int newTmp) > test.d(49): Error: cannot implicitly convert void(int newTmp) to int > > Is this a problem in my code, lack of implementation in Walter's frontend or a missing section in DLI? > If it is a DLI issue could someone point me to a place to look to implement it? > > Cheers > Brad > |
January 17, 2003 Re: Properties implemented in DLI? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Brad Beveridge | Brad Beveridge wrote: > Hi guys. I'm playing with D at the moment, it's quite nice. I'm checking out properties, ie.. > class Mytest > { > int tmp; > void tp(int newTmp) { printf("assigning tmp\n"); tmp =newTmp;}; > int tp() { printf("getting tmp\n"); return tmp;}; > } > > but DLI gives me the following errors > test.d(48): Error: cannot implicitly convert int to void(int newTmp) > test.d(49): Error: cannot implicitly convert void(int newTmp) to int Properties support is in the very latest version (http://www.opend.org/dli/arc/dli-0.1.2.tar.gz). I see that the menu bar on OpenD is still linking to 0.1.1, I'll have to fix that. |
January 17, 2003 Re: Properties implemented in DLI? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Ilya Minkov | That's what I originally thought too, but according to the sample code in the D spec...
class Abc
{ int myprop;
void property(int newproperty) { myprop = newproperty; } // set'er
int property() { return myprop; } // get'er
}
Personally I'd like to keep the property & it's setters/getters similar, but still different. If they're difference then I can more clearly know what I am trying to do - ie am I try to access the var directly, or though the property methods - I don't want the variable to exactly shadow the getters/settors.
I suspect I will take a code style where my internal variables that are accessed through setters/getters have some kind of pre or postfix - ie
_property or somesuch.
Cheers
Brad
Ilya Minkov wrote:
> Does your class really look like that?
> haven't you forgotten a little thing?
> did you try to compile the piece you're sending?
> here the identifiers simply don't match. i've marked them below.
>
> Brad Beveridge wrote:
>
>> Hi guys. I'm playing with D at the moment, it's quite nice. I'm checking out properties, ie..
>> class Mytest
>> {
>> int tmp;
>
> ^^^tmp!!!
>
>> void tp(int newTmp) { printf("assigning tmp\n"); tmp =newTmp;};
>> int tp() { printf("getting tmp\n"); return tmp;};
>
> ^^ tp!!!
>
>> }
>
>
>
>
>>
>> but DLI gives me the following errors
>> test.d(48): Error: cannot implicitly convert int to void(int newTmp)
>> test.d(49): Error: cannot implicitly convert void(int newTmp) to int
>>
>> Is this a problem in my code, lack of implementation in Walter's frontend or a missing section in DLI?
>> If it is a DLI issue could someone point me to a place to look to implement it?
>>
>> Cheers
>> Brad
>>
>
|
January 17, 2003 Re: Properties implemented in DLI? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Burton Radons | Thanks, grabbing it now..
Burton Radons wrote:
>
>
> Brad Beveridge wrote:
>
>> Hi guys. I'm playing with D at the moment, it's quite nice. I'm checking out properties, ie..
>> class Mytest
>> {
>> int tmp;
>> void tp(int newTmp) { printf("assigning tmp\n"); tmp =newTmp;};
>> int tp() { printf("getting tmp\n"); return tmp;};
>> }
>>
>> but DLI gives me the following errors
>> test.d(48): Error: cannot implicitly convert int to void(int newTmp)
>> test.d(49): Error: cannot implicitly convert void(int newTmp) to int
>
>
> Properties support is in the very latest version (http://www.opend.org/dli/arc/dli-0.1.2.tar.gz). I see that the menu bar on OpenD is still linking to 0.1.1, I'll have to fix that.
>
|
January 17, 2003 Re: Properties implemented in DLI? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Brad Beveridge | Brad Beveridge wrote: > That's what I originally thought too, but according to the sample code in the D spec... > > class Abc > { int myprop; > void property(int newproperty) { myprop = newproperty; } // set'er > int property() { return myprop; } // get'er > } Damnit, i was looking at the very same piece of code in the manual, and didn't notice the identifiers here are different too... I guess i need to force myself to sleep more. sorry for misleading. > > Personally I'd like to keep the property & it's setters/getters similar, but still different. If they're difference then I can more clearly know what I am trying to do - ie am I try to access the var directly, or though the property methods - I don't want the variable to exactly shadow the getters/settors. > > I suspect I will take a code style where my internal variables that are accessed through setters/getters have some kind of pre or postfix - ie > _property or somesuch. > > > Cheers > Brad > > > Ilya Minkov wrote: > >> Does your class really look like that? >> haven't you forgotten a little thing? >> did you try to compile the piece you're sending? >> here the identifiers simply don't match. i've marked them below. >> >> Brad Beveridge wrote: >> >>> Hi guys. I'm playing with D at the moment, it's quite nice. I'm checking out properties, ie.. >>> class Mytest >>> { >>> int tmp; >> >> >> ^^^tmp!!! >> >>> void tp(int newTmp) { printf("assigning tmp\n"); tmp =newTmp;}; >>> int tp() { printf("getting tmp\n"); return tmp;}; >> >> >> ^^ tp!!! >> >>> } >> >> >> >> >> >>> >>> but DLI gives me the following errors >>> test.d(48): Error: cannot implicitly convert int to void(int newTmp) >>> test.d(49): Error: cannot implicitly convert void(int newTmp) to int >>> >>> Is this a problem in my code, lack of implementation in Walter's frontend or a missing section in DLI? >>> If it is a DLI issue could someone point me to a place to look to implement it? >>> >>> Cheers >>> Brad >>> >> > |
Copyright © 1999-2021 by the D Language Foundation