Can TagLib2.0 require C++11 or Boost?

Scott Wheeler wheeler at kde.org
Mon Nov 18 13:54:54 UTC 2013


On Nov 18, 2013, at 2:19 PM, Stephen F. Booth <me at sbooth.org> wrote:

> […] I think it would be worth investigating whether replacing List, Map, RefCounter, etc. with their std:: counterparts would be worthwhile.

The choice not to use the STL at the time when creating TagLib was quite intentional.

In general I’m not a fan of using STL classes in public APIs for much the same reason that Qt doesn’t — it presents an externally inconsistent API.

In the larger C++ world STL / Boost are one school of API design and Qt (and KDE, by extension) are the other.  TagLib falls squarely into the later camp and as such has typically had a rule that STL classes could only appear in the API as export and import functions.

If, for example, it were allowed to have TagLib::String inherit from std::string then there’d an object with some mix_of_underscores and camelCase for its method signatures, which is bleh.

-Scott


More information about the taglib-devel mailing list