update include file conventions since we no longer require C++98 for LAMMPS core files

This commit is contained in:
Axel Kohlmeyer
2020-04-21 19:31:18 -04:00
parent ea31fc11a6
commit db4c6e4056

View File

@ -49,22 +49,15 @@ include files provided with LAMMPS are included with double quotes
For headers declaring functions of the C-library, the corresponding For headers declaring functions of the C-library, the corresponding
C++ versions should be included (examples: `#include <cstdlib>` or C++ versions should be included (examples: `#include <cstdlib>` or
`#include <cctypes>`). However, these includes are limited to those defined `#include <cctypes>` instead of `#include <stdlib.h>` or
in the C++98 standard. Some files thus must use the older style until `#include<ctypes.h>` ).
the minimum C++ standard requirement of LAMMPS is lifted to C++11 or
even beyond (examples: `#include <stdint.h>` versus `#include <cstdint>`
or `#include <inttypes.h>` versus `#include <cinttypes>`).
### C++ Standard Compliance ### C++ Standard Compliance
LAMMPS core files currently correspond to the C++98 standard. Files LAMMPS core files use standard conforming C++ compatible with the
requiring C++11 or later are only permitted in (optional) packages C++11 standard, unless explicitly noted. Also, LAMMPS uses the C-style
and particularly packages that are not part of the list of commonly stdio library for I/O instead of iostreams. Since using both at the
used packages such as MOLECULE, KSPACE, MANYBODY, or RIGID. same time can cause problems, iostreams should be avoided where possible.
Also, LAMMPS uses the C-style stdio library for I/O instead of iostreams.
Since using both at the same time can cause problems, iostreams should
be avoided where possible.
### Lean Header Files ### Lean Header Files