I don't understand why people use to discourage newcomers with all the C++ stuff.
It is not needed to know C++ to start with DGDK.
Knowing simple C is enough to start, just some basics, the C language particularities, and the C syntax.
For example, this is the 1st code example from the link that afaik just posted:
// This is an example Dark GDK program.
#include "DarkGDK.h"
void DarkGDK()
{
// Variables for the center points.
int x = 319, y = 239;
// Draw concentric circles.
for (int radius = 50; radius <= 200; radius += 50)
dbCircle(x, y, radius);
// Wait for the user to press a key.
dbWaitKey();
}
Now there is not a single C++ line in that example. All you can see is C language.
DGDK can be programmed in C with a top-down methodolgy, very much like DBPro basic language. And you can go very far only with that.
It is not strictly needed to apply the C++ powerful features, although in the long run you'll understand the C++ advantages regarding maintainability and code structuration, and you will be willing to use and apply them.
For the compiler, C and C++ are the same language, so it is up to the programmer to go either way. You can go C and directly translate any DBPro code, or you can go C++ declaring classes and all the object oriented stuff.
This makes DGDK powerful, because of the intrinsic C/C++ features.