Как создать этот тип класса коллекции массивов шаблонов C++ с помощью совместимого экземпляра `constexpr` ⇐ C++
-
Гость
Как создать этот тип класса коллекции массивов шаблонов C++ с помощью совместимого экземпляра `constexpr`
Мне интересно, возможно ли в проекте C++ создать класс шаблона, позволяющий создавать экземпляры массивов с переменными размерами, как показано в следующем примере:
ArraysCollection myArrays; В этом примере myArrays должен содержать массивы разных размеров, и пользователь может ввести в аргументы шаблона столько размеров, сколько хочет. Я также хотел бы убедиться, что класс совместим с constexpr. В результате члены данных класса должны выглядеть примерно так:
SomeType arraysCollectionData[] = { {0, 0, 0}, {0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, {0, 0} } Другой пример:
ArrayCollection floatArrays { {-10.f}, {2.f, 3.14f} }; // результаты для SomeType arraysCollectionData[] = { {-10.f, 0.f}, {2.f, 3.14f, 0.f} } Я не совсем понимаю, как этого добиться. Может ли кто-нибудь предоставить руководство или пример того, как реализовать такой класс шаблона на C++, который совместим с constexpr и позволяет создавать экземпляры указанным способом?
Будем очень признательны за любую помощь или предложения. Заранее спасибо!
Мне интересно, возможно ли в проекте C++ создать класс шаблона, позволяющий создавать экземпляры массивов с переменными размерами, как показано в следующем примере:
ArraysCollection myArrays; В этом примере myArrays должен содержать массивы разных размеров, и пользователь может ввести в аргументы шаблона столько размеров, сколько хочет. Я также хотел бы убедиться, что класс совместим с constexpr. В результате члены данных класса должны выглядеть примерно так:
SomeType arraysCollectionData[] = { {0, 0, 0}, {0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, {0, 0} } Другой пример:
ArrayCollection floatArrays { {-10.f}, {2.f, 3.14f} }; // результаты для SomeType arraysCollectionData[] = { {-10.f, 0.f}, {2.f, 3.14f, 0.f} } Я не совсем понимаю, как этого добиться. Может ли кто-нибудь предоставить руководство или пример того, как реализовать такой класс шаблона на C++, который совместим с constexpr и позволяет создавать экземпляры указанным способом?
Будем очень признательны за любую помощь или предложения. Заранее спасибо!
Мобильная версия