mirror of
https://gitlab.com/libeigen/eigen.git
synced 2026-04-10 11:34:33 +08:00
Fix up all doxygen warnings.
This commit is contained in:
@@ -17,7 +17,7 @@ especially if you got wrong results in statements where the destination appears
|
||||
\section TopicPitfalls_alignment_issue Alignment Issues (runtime assertion)
|
||||
|
||||
%Eigen does explicit vectorization, and while that is appreciated by many users, that also leads to some issues in special situations where data alignment is compromised.
|
||||
Indeed, since C++17, C++ does not have quite good enough support for explicit data alignment.
|
||||
Indeed, prior to C++17, C++ does not have quite good enough support for explicit data alignment.
|
||||
In that case your program hits an assertion failure (that is, a "controlled crash") with a message that tells you to consult this page:
|
||||
\code
|
||||
http://eigen.tuxfamily.org/dox/group__TopicUnalignedArrayAssert.html
|
||||
@@ -40,7 +40,7 @@ for(...) { ... w = C * v; ...}
|
||||
|
||||
In this example, the type of C is not a \c MatrixXd but an abstract expression representing a matrix product and storing references to \c A and \c B.
|
||||
Therefore, the product of \c A*B will be carried out multiple times, once per iteration of the for loop.
|
||||
Moreover, if the coefficients of A or B change during the iteration, then C will evaluate to different values.
|
||||
Moreover, if the coefficients of `A` or `B` change during the iteration, then `C` will evaluate to different values.
|
||||
|
||||
Here is another example leading to a segfault:
|
||||
\code
|
||||
@@ -72,7 +72,7 @@ Note that DenseBase::eval() is smart enough to avoid copies when the underlying
|
||||
\section TopicPitfalls_header_issues Header Issues (failure to compile)
|
||||
|
||||
With all libraries, one must check the documentation for which header to include.
|
||||
The same is true with %Eigen, but slightly worse: with %Eigen, a method in a class may require an additional <code>#include</code> over what the class itself requires!
|
||||
The same is true with %Eigen, but slightly worse: with %Eigen, a method in a class may require an additional \c \#include over what the class itself requires!
|
||||
For example, if you want to use the \c cross() method on a vector (it computes a cross-product) then you need to:
|
||||
\code
|
||||
#include<Eigen/Geometry>
|
||||
|
||||
Reference in New Issue
Block a user