WinStd
Additional templates and function helpers for Microsoft Windows using Standard C++ classes
|
File handle wrapper. More...
#include <WinStd/Win.h>
Public Member Functions | |
bool | create (1 LPCTSTR lpFileName, 1 DWORD dwDesiredAccess, 1 DWORD dwShareMode, 1 DWORD dwCreationDisposition, 1 DWORD dwFlagsAndAttributes=FILE_ATTRIBUTE_NORMAL, 1 LPSECURITY_ATTRIBUTES lpSecurityAttributes=NULL, 1 HANDLE hTemplateFile=NULL) noexcept |
Opens file handle. More... | |
![]() | |
virtual | ~win_handle () |
Closes an open object handle. More... | |
![]() | |
handle () noexcept | |
Initializes a new class instance with the object handle set to INVAL. | |
handle (1 handle_type h) noexcept | |
Initializes a new class instance with an already available object handle. More... | |
handle (1 handle< handle_type, INVAL > &&h) noexcept | |
Move constructor. More... | |
handle< handle_type, INVAL > & | operator= (1 handle_type h) noexcept |
Attaches already available object handle. More... | |
handle< handle_type, INVAL > & | operator= (1 handle< handle_type, INVAL > &&h) noexcept |
Move assignment. More... | |
operator handle_type () const | |
Auto-typecasting operator. More... | |
handle_type *& | operator* () const |
Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.). More... | |
handle_type * | operator& () |
Returns the object handle reference. More... | |
handle_type | operator-> () const |
Provides object handle member access when the object handle is a pointer to a class or struct. More... | |
bool | operator! () const |
Tests if the object handle is INVAL. More... | |
bool | operator< (1 handle_type h) const |
Is handle less than? More... | |
bool | operator<= (1 handle_type h) const |
Is handle less than or equal to? More... | |
bool | operator>= (1 handle_type h) const |
Is handle greater than or equal to? More... | |
bool | operator> (1 handle_type h) const |
Is handle greater than? More... | |
bool | operator!= (1 handle_type h) const |
Is handle not equal to? More... | |
bool | operator== (1 handle_type h) const |
Is handle equal to? More... | |
void | attach (1 handle_type h) noexcept |
Sets a new object handle for the class. More... | |
handle_type | detach () |
Dismisses the object handle from this class. More... | |
void | free () |
Destroys the object. | |
Additional Inherited Members | |
![]() | |
typedef HANDLE | handle_type |
Datatype of the object handle this template class handles. | |
![]() | |
static const HANDLE | invalid |
Invalid handle value. | |
![]() | |
void | free_internal () noexcept override |
Closes an open object handle. More... | |
virtual void | free_internal () noexcept=0 |
Abstract member function that must be implemented by child classes to do the actual object destruction. More... | |
![]() | |
handle_type | m_h |
Object handle. | |
File handle wrapper.
|
inlinenoexcept |
Opens file handle.
true
when succeeds;false
when fails. Use GetLastError()
for failure reason.