У меня есть статический массив указателей на функции в качестве члена класса.
Мне нужно инициализировать его, но оказывается, что этот массив имеет длину 64 КБ, поэтому нецелесообразно инициализировать его статическим инициализатором, таким как { x, y, z, ... }
, так как это может загромождать код.
Вместо этого я должен инициализировать его с помощью кода с несколькими циклами.
Я решил сделать это путем инициализации массива static
в конструкторе и установки для него флага, так что только конструкция первого экземпляра класса будет запускать эту инициализацию.
Также доступ к этому статическому флагу из экземпляров не будет безопасным для потоков, но это уже другая история.
Есть ли более чистый или лучший способ сделать это?
Я также хотел бы, чтобы этот массив был const
, но я боюсь, что единственный способ сделать это с инициализацией static {}
, верно?