What is the difference between:
Also, what is:
I am quite confused. Which one should I use?
You usally use the <> to say that the header is OUTSIDE your project, and not one of your own files. If it is your file you use "" instead. This is mostly to make it a bit more clear to yourself and other people.
In your case the use of <> is the better way to go.
The "class" keyword is used for forward declaration. In c++ it speeds up compilation and I usually use it instead of having a recursive dependency. For example if you have header A.h including B.h and B.h needs to include A.h. Instead I forward declare class A in B or whatever seems most suitable.
This question would explain it a bit too since I've only used forward declaration in C++.
class SomeClassin C++ - Hot Licks 2012-04-03 21:21