WinStd
Windows Win32 API using Standard C++
|
Classes | |
struct | winstd::LocalFree_delete< _Ty > |
Deleter for unique_ptr using LocalFree. More... | |
struct | winstd::LocalFree_delete< _Ty[]> |
Deleter for unique_ptr to array of unknown size using LocalFree. More... | |
struct | winstd::GlobalFree_delete |
Deleter for unique_ptr using GlobalFree. More... | |
class | winstd::globalmem_accessor< T > |
Context scope automatic GlobalAlloc (un)access. More... | |
Macros | |
#define | __L(x) |
"L" stringizing macro | |
#define | _L(x) |
Makes string Unicode. | |
#define | WINSTD_STRING_IMPL(x) |
Stringizing macro helper. | |
#define | WINSTD_STRING(x) |
Stringizing macro. | |
#define | WINSTD_NONCOPYABLE(C) |
Declares a class as non-copyable. | |
#define | WINSTD_NONMOVABLE(C) |
Declares a class as non-movable. | |
#define | WINSTD_STACK_BUFFER_BYTES 1024 |
Size of the stack buffer in bytes used for initial system function call. | |
Typedefs | |
typedef std::string | winstd::tstring |
Multi-byte / Wide-character string (according to _UNICODE) | |
#define __L | ( | x | ) |
"L" stringizing macro
#define _L | ( | x | ) |
#define WINSTD_NONCOPYABLE | ( | C | ) |
Declares a class as non-copyable.
#define WINSTD_NONMOVABLE | ( | C | ) |
Declares a class as non-movable.
#define WINSTD_STACK_BUFFER_BYTES 1024 |
Size of the stack buffer in bytes used for initial system function call.
Some system functions with variable length output data fail for insufficient buffer sizes, and return an exact buffer length required. The function helpers use a fixed size stack buffer first. If the stack buffer really prooved sufficient, the helper allocates the exact length output on heap and copies the data without calling the system function again. Otherwise it allocates the exact length output on heap and retries.
#define WINSTD_STRING | ( | x | ) |
Stringizing macro.
#define WINSTD_STRING_IMPL | ( | x | ) |
Stringizing macro helper.