Feature request: constructor and resize from values
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 35/100
Research direction
Start by locating the multi_array constructor and resize APIs described in the issue, then inspect how they currently initialize elements and how std::vector accepts a value. Determine the supported design for supplying a value_type when creating or resizing an array. Done means non-default-constructible classes can be stored without hard compiler errors and existing extent-based behavior remains supported.
Written by the indexing model from the issue text.
Description
Hello, this is a copy of my email I sent to the boost-users mailing list, as it might improve visibility.
I'd love to be able to use multi_array with classes that do not have a default constructor. At the moment, this is impossible, as both the constructor and resize functions only take extents as arguments (and possibly some other options), but no value_type, as for example std::vector does. Thus, trying to store objects without a default constructor in a multi_array results in hard compiler errors, with no workaround that I know of.
This happens to me fairly often, as I use multi_array to organize sets of complex objects. If there is a technical reason why this is not possible, I would also be happy to learn it.
- Dominant language
- C++
- Stars
- 32
- Forks
- 39
- PR merge metrics
- No merged PRs in 30d
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from boostorg/multi_array
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
boostorg/multi_array#38 · 2 comments · 1 reaction ·
-
boostorg/multi_array#35 · 2 comments · 1 assignee ·
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
boostorg/multi_array#34 ·
-
Difficulty 5/5 Over a week Newbie friendliness 30/100
boostorg/multi_array#33 ·
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
boostorg/multi_array#32 ·
All issues in boostorg/multi_array
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
objectionary/eo-graphs#74 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 95/100
-
enhancement
Difficulty 1/5 Under an hour Newbie friendliness 88/100
QuantStack/git2cpp#187 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100