我有一个指向作为类成员的函数的静态指针数组。
我需要初始化它,但事实证明这个数组有 64K 项长,所以用像 { x, y, z, ... }
这样的静态初始化器来初始化它是不切实际的它会使代码困惑。
我不得不通过代码来初始化它,有几个循环。
我想这样做的方法是在构造函数中初始化 static
数组并为其设置一个标志,因此只有类的第一个实例的构造才会触发此初始化。
从实例内部访问这个静态标志也不是线程安全的,但那是另一回事了。
是否有更清洁或更好的方法来执行此操作?
我也希望这个数组是 const
,但恐怕唯一的方法是使用 static {}
初始化,对吗?
最佳答案
另一种选择是使用代码生成:编写一个单独的程序来生成用于定义静态数组的源代码。
关于c++ - 在 C++ 中初始化类的静态数组成员的更好方法(尽管首选 const),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8108321/