I’m facing difficulty in understanding source and header files stuff.
Suppose
1)I have a source file(functions.cpp) which contains function named ‘int add(int x,int y)’ in the location /Users/xyz/Desktop/functions.cpp.
2)The header file(functions.h) which contain the declaration of the functions in source file(functions.cpp) is placed in /Users/xyz/Documents/function.h
3)Other source file(main.cpp) which contain ‘main()’ function need to call the ‘add()’ function defined in ‘functions.cpp’.The source file ‘main.cpp’ is located in /Users/xyz/Downloads/main.cpp
I’m placing these files in different locations so that i can understand these concepts better.
So,how do i link function.cpp to main.cpp using functions.h.
#include " "
What is the path that i should use in the above include?
Also,it is my understanding that .h files provides the declaration of functions which are defined some where else and having a declaration is necessary for the compiler to call the functions which are defined in some other files or functions which are not defined yet. Is that right? Please correct me in case I’m wrong.
Your first question has no answer. C++ does not define how header files are found, it’s up to the compiler and they all do it a bit differently. If you want an answer you’ll have to look up the details in the documentation of your compiler. I would recommend you put everything the same directory and stop worrying about it.
In the second part of your question, your understanding seems pretty good to me.