We are pleased to announce the general availability of Microsoft Azure Storage Client Library for C++ (version 1.0.0). You can download the nuget package or get the source code from GitHub to start using the library.
Getting Started with C++ client library
The Azure Storage Client Library for C++ provides a comprehensive API for working with Azure storage, including but not limited to the following abilities:
- Create, read, delete, and list blob containers, tables, and queues.
- Create, read, delete, list and copy blobs plus read and write blob ranges.
- Insert, delete, replace, merge, and query entities in an Azure table.
- Enqueue and dequeue messages in an Azure queue.
- Lazily list containers, blobs, tables, and queues, and lazily query entities (new in version 1.0.0)
To get started with Azure Storage client library for C++, please visit the following articles:
- How to use Blob Storage from C++
- How to use Table Storage from C++
- How to use Queue Storage from C++
Please visit the Azure Storage client library for C++ API documentation for more details.
Cross Platform
Azure Storage C++ client library supports Windows and Linux development. You can now compile the SDK with g++ via a cmake build script. Please refer to the Getting Started on Linux section for more details.
Dependency on CppREST SDK
The CppREST SDK (Code name Casablanca) is a Microsoft project for cloud-based client-server communication in native code using a modern asynchronous C++ API design.
The Microsoft Azure Storage Client Library for C++ is built on top of the CppREST SDK and currently supports VS2012 and VS2013, same as the CppREST version 2.4 and before.
However, in the latest version of the CppREST (2.5) the support for VS2012 has been deprecated. To ensure a smooth upgrade from the previous version of the Storage C++ SDK, we have not upgraded the dependency of CppREST to 2.5 yet. In the future, we will also deprecate VS2012 support and move to the next version of CppREST. We also recommend all users to migrate their applications to Visual Studio 2013 or higher.
In the meantime, if you need CppREST 2.5, you can clone the Storage C++ SDK source code from GitHub, upgrade the dependency, and compile on your demand. Please let us know if you have any questions.
Asynchronous / Synchronous Programing
The Azure Storage C++ client library leverages the CppREST SDK asynchronous programming methodology to expose asynchronous API. It also provides the synchronous method which is a wrapper of the asynchronous method. We highly recommend users to use the asynchronous API for their concurrent scenarios. For more details regarding asynchronous programming in CppREST SDK, please visit CppREST SDK pplx Namespace.
Next Steps
- Visit the Azure Storage C++ client library Change Log on GitHub
- Visit our Azure Storage Documentation page for the latest on Azure Storage
As always, we are looking forward to your feedback.
Microsoft Azure Storage Team
Can i use this library in Android and iOS?
Vinod, while it could be possible with some work to use the c++ lib for iOS the library becomes too large for most mobile scenarios. We do already have an Android storage client (here: github.com/…/azure-storage-android) and are actively working on an IOS library.
I cannot wait iOS version to be published!