Including c++ headers into cuda

Hey guys.

I’m currently working on my final year project at uni and using CUDA to enhance a large application, and had a quick question.
Whilst working through it, there are literally hundreds of typedefs being used that I will need inside my device code. Can I include these with the normal c++ headers even though these include other code, or do I have to create them in a cu file?
I currently have a cuh file which contains them but if I can simply include the originals it will make life a lot easier (I hope).

Also, i’ve created another cu file which contains a series of device methods which are replacing the current c++ ones, and I’ve got a cuh header for it as well which is being included by another cuda file, however inside this I have a couple of methods which seem to think they’re defined multiple times? For instance, a method called cuPerturb_Normal is declared in the cuh file, and implemented in the cu file, but inside this method, it recursively calls itself again but at this point it is giving me an error stating “Error: more than one instance of function “cuPerturb_Normal” mathes the argument list”, but when I tell it to show me them, there is just the definition in my cuh header and the implementation? This is also happening with a couple of other methods and I can’t figure out why. I’m using visual studio 2010.

Any suggestion?

Thanks in advance