C++ still doesn't have good loop syntax
Kapendev
alexandroskapretsos at gmail.com
Wed Jul 15 19:23:50 UTC 2026
On Wednesday, 15 July 2026 at 19:06:50 UTC, user1234 wrote:
> On Wednesday, 15 July 2026 at 17:02:10 UTC, Adam D. Ruppe wrote:
>> On Wednesday, 15 July 2026 at 15:28:54 UTC, H. S. Teoh wrote:
>>>> ```d
>>>> string[$] vec = [ ... ]; // or some equivalent syntax
>>>> ```
>>>
>>> Didn't OpenD already implement this feature?
>>
>> Yes, we merged the PR upstream rejected.
>>
>> void main() {
>> string[$] a = ["a", "b"];
>> pragma(msg, typeof(a));
>> }
>>
>> $ opend -o- sa
>> string[2]
>
> IMO that's a workaround. Imagine that array literals are static
> arrays by default, then no problem. Eventually you can turn
> them into dynamic arrays using implicit convertion / type
> inference. However truth is that D cannot change such a thing
> given its age.
The other solution I can think of that Nim is doing something
like this:
```d
auto static_array = $[1, 2, 3]; // int[3]
```
You can replace the `$` with any character, not important.
More information about the Digitalmars-d
mailing list