| | |
How to write a header file
Please support our C++ advertiser: Intel Parallel Studio Home
![]() |
•
•
Join Date: Mar 2004
Posts: 28
Reputation:
Solved Threads: 0
A header file is made up of pre-processor directives, classes, namespaces etc. a good place to look at is cplusplus.com. look at the classes, objects and namespaces chapters...
My God I even had a comp science teacher ask me this.Arrrg one will go mad.
It's simple.Cut a few funtions out of you code and paste them in a file with a .h extension and call #include "your_header_name.h" to include that.
Note: not < > but " " if it's in the current directory else you have to supply the full or relative path.
All the rules are same as normal C++ syntax.
----------------------------------------------
That was very simple thing.Headers can be used for more things.They can just contain funtions declarations without definitions.In that case it will be used to link to a static library.
Eg.Make a header file with 2 funtion declarations like fun1(); fun2(); only
Include it with a cpp file and call the funtions and compile.
You will get no errors on compile but on linking you will see an error similar to the following:
undefined module fun1() refferenced from Module main.cpp
undefined module fun2() refferenced from Module main.cpp
I hope you understand a header in not really diffrent from a cpp file.Btw you can also include .cpp files.
Eg: #include "wow.cpp"
It's simple.Cut a few funtions out of you code and paste them in a file with a .h extension and call #include "your_header_name.h" to include that.
Note: not < > but " " if it's in the current directory else you have to supply the full or relative path.
All the rules are same as normal C++ syntax.
----------------------------------------------
That was very simple thing.Headers can be used for more things.They can just contain funtions declarations without definitions.In that case it will be used to link to a static library.
Eg.Make a header file with 2 funtion declarations like fun1(); fun2(); only
Include it with a cpp file and call the funtions and compile.
You will get no errors on compile but on linking you will see an error similar to the following:
undefined module fun1() refferenced from Module main.cpp
undefined module fun2() refferenced from Module main.cpp
I hope you understand a header in not really diffrent from a cpp file.Btw you can also include .cpp files.
Eg: #include "wow.cpp"
It is very very simple:
write some functions||define some macros||define structures/classes etc...
DO NOT include a main() function
save it with the name you want
e.g header.txt/cpp/in/out/...
you use it through: #include "..."
if you have variables in your header, do not redeclare them in your programs or it will give you an error "Multiple declaration for variable..."
:p
write some functions||define some macros||define structures/classes etc...
DO NOT include a main() function
save it with the name you want
e.g header.txt/cpp/in/out/...
you use it through: #include "..."
if you have variables in your header, do not redeclare them in your programs or it will give you an error "Multiple declaration for variable..."
:p
Even if you include main() in a header and dont declare main() in any other funtion the program will complie and work properly.Headers are just a way to organise code.
![]() |
Similar Threads
- How do i make a c++ file from a header file thats linked list with a sort function (C++)
- Recursive Binary Search Tree Header File (C++)
- Implicit declaration of function with header file (C++)
- read and write csv file using csv module (Python)
- Image header file's missing ? (VB.NET)
Other Threads in the C++ Forum
- Previous Thread: Is C Right For Me?
- Next Thread: have a try if you are interested in...
Views: 26084 | Replies: 5
| Thread Tools | Search this Thread |
Tag cloud for C++
6 add api array arrays assignment beginner binary bitmap c++ c/c++ calculator char class classes code compile compiler console conversion convert count data delete desktop directshow dll encryption error file forms fstream function functions game getline givemetehcodez google graph homeworkhelper iamthwee ifstream input int integer java lazy lib linkedlist linux loop looping loops map math matrix memory multidimensional newbie news node number output parameter pointer problem program programming project proxy python random read recursion recursive reference return sort string strings struct studio system template templates text tree unix url variable vector video visual visualstudio win32 windows winsock word wordfrequency wxwidgets





