I am ultilizing blitz++ as my internal data structure in a C++ application polyorder
. Blitz++ is great, I really love using it. However, I also encounter some inconvenient cases.
1. the assignment operator of blitz::Array
Say, I have a class A which has a member _data. The synthesized copy constructor works fine. But the synthesized assignment operator will fail, since the assignment operator does not work as expected. The following code
A = 1.0;
blitz::Array<double,3> B(A); // this is fine
C = A; // Bang! This fails. C is empty!
In any rate, the last line should assign C with A whatever the size C is. If C's shape is different than A, then blitz should reshape C internally and then adopt the data from A.
2. blitz::product should work for blitz::TinyVector * blitz::TinyMatrix
is implemented. However, it is equally common to compute the product
Now blitz::TinyVector should be considered as a row vector rather than a column vector.
Yi-Xin Liu, PHD
Department of Macromolecular Science
Room 415, Yuejing Building
Handan Rd. 220, Shanghai, China