**************************
Structure of a C++ Program
**************************
.. admonition:: reading
* `Structure of a program `_ from cplusplus.com
Let's look at a simple "Hello, World" program:
.. important::
Every C++ program needs to have a ``main()`` function
.. code:: c++
#include
// our Hello, World program
int main()
{
std::cout << "Hello World!" << std::endl;
}
A nice breakdown of a "Hello, World" program is shown here: https://www.cplusplus.com/doc/tutorial/program_structure/ ---let's walk through that.
A few important bits:
* A preprocessor is used to bring additional functionality into our code
(the ``#include``)
* C++ comments start with ``//``
* Each C++ program needs to have a function called ``main()`` and that function
is of type ``int``.
* ``{`` and ``}`` are used to denote blocks of code in C++
* The C++ Standard Library provides a lot of useful functions and
capabilities. Here we use ``std::cout`` from the standard library
to output.
* ``<<`` is an operator in C++. Its meaning can depend on context.
Here it is used to pass ``"Hello, World!"`` to ``cout``
* ``::`` is the scope operator. This tells us that ``cout`` is part of a *namespace*
called ``std``, and the compiler should look there for its implementation.
* Statements end with ``;``
.. note::
C++ files can have a variety of extensions, including: ``.C``,
``.cxx``, ``.cc``, and ``.cpp``.
I'll use ``.cpp`` throughout this course.