there is sometimes the discussion about the question: why is it useful to use quotation includes? This means includes with quotations,
#include "anyFileName.h"
instead of includes of libraries,
#include
Those question is mainly relevant for programmers in C++. Most other programmers can be happy and develop further on.
It's the baken of include question. And the best solution is, to use both, of-course.
The cream of the crop is, to use library include only for libraries. Though, if you include your own local files, which are not seperated by library-borders, it is necessary to include by quotation mark.
Let's have a look deeper.
The idea behind library includes is: that, you will shift the responsibility of include-paths to the configuration of your development-environment. This is especially usefull, if you see the computer as touring-machine, and in that way as a system which executes programms, but needs a configuration also.
Ok, if you use library includes to shift the responsiblity to configuration, it does not make any sense to apply path in the filename. Because, if you change the path of that libraries, and perhaps also a deeper path, it is necessary to change that internal/deeper path in all your files, which use the library. This is, what we like to eliminate with library include.
So, it makes no sens to add directories to library includes.
e.g. #include
This causes the second problem, that all library files have to have a unique filename. For all libraries you use, e.g. if you like to have an own point or list implementation, you want to call the filenames "point.h" and "list.h", but they are already occupied by the library you use in the project also.
Therefore, you need local quotation include's. In this case, you can add a subpath to the filename and use it as e.g. #include "internalPath/point.h".
In the end it means: if you differ between namespaces or if you have local internal files only used by your application, use quotation includes, please.
Regards, Sebastian Böhmer, 06.04.2016