June 25, 2007
Hello.

For DMD 1.x, let's say I have the following template:

> template structname (S) {
>    static const string structname = S.stringof[0..$-1];
> }

Is there any difference between 'static const ...' and 'const ...'?

Thanks.

Myron.
June 25, 2007
Reply to Myron,

> Hello.
> 
> For DMD 1.x, let's say I have the following template:
> 
>> template structname (S) {
>> static const string structname = S.stringof[0..$-1];
>> }
> Is there any difference between 'static const ...' and 'const ...'?
> 
> Thanks.
> 
> Myron.
> 

I may be wrong but, unless you use it as a mixin or inside of a class/struct, I don't think so.


June 26, 2007
BCS wrote:
> Reply to Myron,
> 
>> Hello.
>>
>> For DMD 1.x, let's say I have the following template:
>>
>>> template structname (S) {
>>> static const string structname = S.stringof[0..$-1];
>>> }
>> Is there any difference between 'static const ...' and 'const ...'?
>>
>> Thanks.
>>
>> Myron.
>>
> 
> I may be wrong but, unless you use it as a mixin or inside of a class/struct, I don't think so.
> 
> 

More generally: Using 'static' at module-level scope does nothing. If the actual declaration ends up at some other scope (whether the template was mixed-in or is simply located somewhere other than module scope) then the 'static' will be meaningful.

-- 
Kirk McDonald
http://kirkmcdonald.blogspot.com
Pyd: Connecting D and Python
http://pyd.dsource.org
June 26, 2007
Kirk McDonald wrote:
> BCS wrote:
>> Reply to Myron,
>>
>>> Hello.
>>>
>>> For DMD 1.x, let's say I have the following template:
>>>
>>>> template structname (S) {
>>>> static const string structname = S.stringof[0..$-1];
>>>> }
>>> Is there any difference between 'static const ...' and 'const ...'?
>>>
>>> Thanks.
>>>
>>> Myron.
>>>
>>
>> I may be wrong but, unless you use it as a mixin or inside of a class/struct, I don't think so.
>>
>>
> 
> More generally: Using 'static' at module-level scope does nothing. If the actual declaration ends up at some other scope (whether the template was mixed-in or is simply located somewhere other than module scope) then the 'static' will be meaningful.
> 

Thanks all.

Myron.
Top | Discussion index | About this forum | D home