dlib C++ Library

dlib C++ Library is a modern C++ library with a focus on portability and program correctness.
Download

dlib C++ Library Ranking & Summary

Advertisement

  • Rating:
  • License:
  • Freely Distributable
  • Price:
  • FREE
  • Publisher Name:
  • Davis King
  • Publisher web site:

dlib C++ Library Tags


dlib C++ Library Description

dlib C++ Library is a modern C++ library with a focus on portability and program correctness. dlib C++ Library is a modern C++ library with a focus on portability and program correctness. The library is open source software and is licensed under the Boost Software License. Here are some key features of "dlib C++ Library": · Everything is Design by Contract all the time. This means there is complete and precise documentation for every class and function. There are also debugging modes that check the preconditions for functions. When this is enabled it will catch the vast majority of bugs caused by calling functions incorrectly or using objects in an incorrect manner. · Abstraction layers on top of operating system APIs. Specifically: directory navigation, TCP sockets, threading and graphical user interfaces. · Very portable · All non ISO C++ code is located in the OS abstraction layers which are as small as possible (about 9% of the library). The rest of the objects in the library are either layered on top of the OS abstraction layer or are pure ISO C++. · Big/little endian agnostic. · No assumptions are made about structure byte packing. · No other packages are required to use the library. Only APIs that are provided by an out of the box OS are used. Many container classes. What makes these containers different from what can be found in the STL is how they move objects into and out of themselves. Rather than copying things around everything is moved around by swapping. This allows you to do things like have containers of containers of containers. They also have simpler interfaces. Additionally: · There are many versions of each container with different performance characteristics so you have great flexibility in choosing exactly what you want. · Many of the containers perform all their allocations through the memory_manger object and unlike the STL there is no requirement that different instances of the memory manager/allocator be able to free objects allocated from each other. This allows for much more interesting memory manager implementations. · All containers are serializable. · A command line parser with the ability to parse and validate command lines with various types of arguments and options. · Various abstracted objects representing parts of data compression algorithms. Many forms of the PPM algorithm are included. · A big integer object · A thread safe logger object styled after the popular Java logger log4j. · All new threads are pulled from a dynamically sized thread pool. So calls to create_new_thread() are fast. · A fast matrix object implemented using the expression templates technique. · A modular testing framework. · A simple HTTP server object you can use to embed a web server into your applications. What's New in This Release: · This release brings the state-of-the-art BOBYQA algorithm for box-constrained optimization without derivatives to the library. · Additionally, a handful of the example programs have been improved and there is also a new example showing how to use BOBYQA to optimize the parameters of machine learning algorithms.


dlib C++ Library Related Software