QubitRegister<Type>::QubitRegister(new_num_qubits, Type *state) doesnt work correctly
- Dominant language
- C++
- Stars
- 264
- Forks
- 76
- Avg merge
- 8d 11h
- Merged PRs (30d)
- 2
Description
**Describe the bug**
```
template
QubitRegister::QubitRegister(std::size_t new_num_qubits, Type *state,
std::size_t tmp_spacesize_)
{
imported_state = true;
Initialize(new_num_qubits, tmp_spacesize_);
this->state = state;
}
```
has two problems:
1. it doesn't initialize all needed class variables, e.g. "specialized", so this flag is sometimes true, sometimes false
2. it doesn't work if USE_MM_ALLOC is not defined -> memory crash
**To Reproduce**
Steps to reproduce the behavior:
Use the ctor and initialize the statevector with a prepared memory pointer, undef MM_USE_MALLOC
**Fixes**
1. init all class variables in the declaration
2. add code for undef USE_MM_MALLOC with a specialized AlignedAllocator to transport the memory block into state_storage
See my PR #57
Contributor guide
Assessment
This issue has not been assessed yet.