Код: Выделить всё
#include
#include
#include
#include
struct Int{
int v;
Int(int v):v{v}{}
};
int main()
{
auto gen = [](size_t i) { return Int(11*(i+1)); };
std::array arr = [&arr, &gen](){
for(std::size_t i=0; i < arr.size(); i++)
new (arr.data() + i) Int(gen(i));
return arr;
}();
for(auto i : arr) { std::cout
Подробнее здесь: [url]https://stackoverflow.com/questions/78673013/is-it-legal-to-initialize-an-array-via-a-functor-which-takes-the-array-itself-as[/url]