这在 C++ 中叫什么?

Ald*_*hfi 1 c c++ dictionary hashmap

我见过一段代码,是这样的:

int charP[] = {
    ['A'] = 1, 
    ['B'] = 2,
    ['C'] = 3, 
    ['D'] = 4};
Run Code Online (Sandbox Code Playgroud)

我的 C++ 语法荧光笔无法识别它,但 C 语法荧光笔可以识别。它的行为有点像 Python 字典,所以charP['A']会吐出1. 也许我看起来不够努力,但是任何人都可以指出我正确的方向,因为每次我搜索“C++ 字典”或“C 字典”时,它总是涉及地图而不是这个。它是什么?它有什么局限性?

All*_*ind 5

在 C 中,它是使用指定的初始值设定项进行数组初始化。C 2017 规范的第 6.7.9 节对此进行了介绍。

在 C++ 中,这是无效语法(@Ranoiaetep、@CaptainObvlious)。