make_file_based_data_storage
Версия от 07:03, 6 августа 2017; Андрей Чусов (обсуждение | вклад) (Новая страница: «{{DISPLAYTITLE:make_file_based_data_storage}} {{function_begin |DataStorageOwn make_file_based_data_storage(const char* pszFileName, FileAccessMask nAccessMask, F…»)
DataStorageOwn make_file_based_data_storage(const char* pszFileName, FileAccessMask nAccessMask, FileCreationDisposition nDisp); //1
template <class traits_t, class alloc_t>
DataStorageOwn make_file_based_data_storage(const std::basic_string<char, traits_t, alloc_t>& strFileName, FileAccessMask nAccessMask, FileCreationDisposition nDisp); //2
template <FileAccessMask nAccessMask, FileCreationDisposition nDisp>
/*статически_вычисленный_тип*/ make_file_based_data_storage(_In_z_ const char* pszFileName); //3
template <FileAccessMask nAccessMask, FileCreationDisposition nDisp, class traits_t, class alloc_t>
/*статически_вычисленный_тип*/ make_file_based_data_storage(const std::basic_string<char, traits_t, alloc_t>& strFileName); //4
Создает файловый буфер с интерфейсом IDataStorage (или порожденным от него), делегируя вызов функции CreateFileAsBinaryDataStorage, и адаптирует доступ с помощью соответствующего адаптера.
-
Перегрузки 3 и 4 дополнительно осуществляют преобразование интерфейса возвращаемого объекта к типу ContiguousDataStorageInputOwn, ContiguousDataStorageOutputOwn или ContiguousDataStorageOwn в зависимости от значений шаблонного параметра nAccessMask.
- Параметры
pszFileName C-строка UTF-8 с именем файла. strFileName C++ строка UTF-8 с именем файла. nAccessMask Битовая маска флагов доступа. Символическое имя Целочисленное значение Семантика FileRead 1 Право на чтение из файла. FileWrite 2 Право на запись в файл. FileReadWrite 3 Право на чтение и запись в файл. nDisp Диспозиция открытия дескриптора файла. Символическое имя Целочисленное значение Семантика FileCreateAlways 0 Создание файла - всегда. В случае если файл существует, его содержимое удаляется. FileOpenAlways 1 Открытие файла - всегда. Если файл не существует, он создается. FileCreateNew 2 Создание нового файла. Если файл не существует, возвращается ошибка CHSVERROR_ALREADY_EXISTS. FileOpenExisting 3 Открытие существующего файла. Если файл не существует, возвращается ошибка CHSVERROR_NOT_FOUND. FileTruncateExisting 4 Открытие существующего файла с удалением его содержимого. Если файл не существует, возвращается ошибка CHSVERROR_NOT_FOUND. - Возвращаемое значение:
- Объект DataStorageOwn, ContiguousDataStorageInputOwn, ContiguousDataStorageOutputOwn или ContiguousDataStorageOwn, определенный над файлом.
- См. также
DataStorageOwn Владеющий адаптер, определенный над интерфейсом IDataStorage.. IDataStorage::RepresentAs Осуществляет преобразование в интерфейс, заданный идентификатором. IContiguousDataStorage Интерфейс для чтения и записи в накопитель последовательно расположенных и однородных данных. ContiguousDataStorageOwn Владеющий адаптер, определенный над интерфейсом IContiguousDataStorage. CreateFileAsBinaryDataStorage Создает представление файла в виде источника последовательных бинарных данных с произвольным доступом.