# include in *.h oder *.cpp ?



## xFile (4. Januar 2008)

hallo,
ich baue mir grade eine klassen bibliothek auf, sprich mit vererbung unteranderem.
mein problem ist nun, besteht ein unterschied darin ob ich die includes in der *.h oder in der *.cpp datei der klasse vornehme...denn ein bisschen hier und da möchte ich ungerne machen.

ich gehe davon aus, dass es so am besten wäre:

```
// klasse.h
#include <iostream>
// weitere include
using namespace std;

class A {
// ...
};
```


```
// klasse.cpp
#include "klasse.h"

A::A() {}
// usw.
```
wie handhabt ihr dieses problem?

danke schonmal!


----------



## sheel (5. Januar 2008)

Hi,

das ist schon in Ordnung so,
ist auch die normale Vorgehensweise

Gruß


----------



## RedWing (5. Januar 2008)

Hallo,

generell sollte man Header nur dort inkludieren wo man sie auch wirklich braucht.  Es macht bspw. keinen Sinn iostream im Header zu inkludieren wenn er  dort nicht gebraucht wird. Dadurch erspart man sich

1.) unleserlichen Code
2.) Kompilierzeit


Gruß,
RedWing


----------

