12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- <chapter xml:id="general-structure">
- <title>General structure and usage</title>
- <p>The topmost structural units of the library are headers and the library file
- (or archive) - <tt>lib__vic.a</tt> or <tt>__vic.lib</tt>. Usually the library
- file has some suffix like <tt>lib__vic14.a</tt>. All the headers
- are located in the <tt>__vic/</tt> subdirectory. One should include them like
- this:</p>
- <code-block lang="C++">
- #include <__vic/<nt>header.h</nt>>
- </code-block>
- <p>Where <tt><nt>header.h</nt></tt> is a name of the desired header.</p>
- <p>Almost all the code is placed within <tt>__vic</tt> namespace, including
- other namespaces.</p>
- <p>During program linking, the library file must be given to the linker.
- Example:</p>
- <tty>
- $ g++ -std=c++14 prog.cpp -l__vic14
- </tty>
- <p>The library can be built using one of the ISO C++ standards: C++98, C++11,
- C++14, C++17, C++20 or C++23. The standard suffix is used as a suffix for the
- library file (archive).</p>
- <p>Some features require a specific minimal standard version to be available,
- e.g. many of them require at least C++11. These features are marked with
- <sign>C++11</sign> sign that means "C++11 or later".</p>
- <p>Some features are available only in particular standard mode and not
- available otherwise. Such features are marked with <sign>C++98 only</sign>
- sign.</p>
- <p>Detailed description of the library components is provided in the subsequent
- chapters. Descriptions are grouped by headers. C++23 language syntax is mainly
- used as a more complete and expressive one.</p>
- </chapter>
|