struct GdiplusStartupInput
{
UINT32 GdiplusVersion;
DebugEventProc DebugEventCallback;
BOOL SuppressBackgroundThread;
BOOL SuppressExternalCodecs;
GdiplusStartupInput(
DebugEventProc debugEventCallback = NULL,
BOOL suppressBackgroundThread = FALSE,
BOOL suppressExternalCodecs = FALSE)
{
GdiplusVersion = 1;
DebugEventCallback = debugEventCallback;
SuppressBackgroundThread = suppressBackgroundThread;
SuppressExternalCodecs = suppressExternalCodecs;
}
};typedef VOID (WINAPI *DebugEventProc)(DebugEventLevel level, CHAR *message);为什么结构体中有个函数?
{
UINT32 GdiplusVersion;
DebugEventProc DebugEventCallback;
BOOL SuppressBackgroundThread;
BOOL SuppressExternalCodecs;
GdiplusStartupInput(
DebugEventProc debugEventCallback = NULL,
BOOL suppressBackgroundThread = FALSE,
BOOL suppressExternalCodecs = FALSE)
{
GdiplusVersion = 1;
DebugEventCallback = debugEventCallback;
SuppressBackgroundThread = suppressBackgroundThread;
SuppressExternalCodecs = suppressExternalCodecs;
}
};typedef VOID (WINAPI *DebugEventProc)(DebugEventLevel level, CHAR *message);为什么结构体中有个函数?
1.struct默认的访问级别是public,class是private
2.struct在结构体里面没有函数的话可以保持对C语言的兼容~
结构体里面含有函数(几乎都是构造函数)多半是为了实现特殊的功能。一般建议不要这么使用,毕竟违背了类的初衷。