A graphic example
Code:
// header file
#ifndef HEADER_H
#define HEADER_H
class Cat
{
public:
Cat();
~Cat();
int getAge() const;
void setAge ( int age );
private:
int *m_age;
};
#endif
Class implement file, note it will be the same name but uses .cpp not .h
Code:
#include "header.h" // needed to acsess class
Cat::Cat()
{
m_age = new int(2);
}
Cat::~Cat()
{
delete m_age;
m_age = NULL;
}
int Cat::getAge() const
{
return *m_age;
}
void Cat::setAge ( int age )
{
*m_age = age;
return age;
}
main file follows
Code:
#include "header.h"
#include <iostream>
int main ( void )
{
Cat *kitten = new Cat;
std::cout << "My cat is " << kitten->getAge() << std::endl;
kitten->setAge(3);
std::cout << "Now my cat is " << kitten->getAge() << " years old" << std::endl;
delete kitten;
kitten = NULL;
return 0;
}
Yoi can see that using header files you can split a large program up into more
managle peices