3
0
mirror of https://github.com/triqs/dft_tools synced 2024-11-01 19:53:45 +01:00
dft_tools/doc/reference/c++/arrays/FAQ.rst
Olivier Parcollet f2c7d449cc First commit : triqs libs version 1.0 alpha1
for earlier commits, see TRIQS0.x repository.
2013-07-17 19:24:07 +02:00

25 lines
817 B
ReStructuredText

.. highlight:: c
FAQ
======
How do I iterate on my array ?
-----------------------------------
There are different way to iterate on the element of an array, recommended in this order from the most simple/efficient to the most complex/slow :
* To assign data into an array, the simplest and efficient way is to use
automatic assignment with lazy expressions, Cf :ref:`Lazy`.
* For a more general case, where one does not simply assign a value to the array element,
use a *foreach* construct, Cf :ref:`Foreach`.
* You can use STL algorithms, since arrays have STL compliant iterators.
The performance may be lower than *foreach* loops (never better anyhow).
* Of course, one can still use a simple for loop, but this is not recommended in general
since it is more error prone and less optimal.