你知道任何好的库将posix和linux函数和结构(例如套接字或文件描述符)包装到C ++类中吗?例如,我正在考虑一个基本的FileDescriptor类和一些继承类(unix套接字等),其方法包括write,read甚至一些系统调用(sendfile,splice) - 所有抛出异常而不是设置errno。或者一些共享内存类等。
我似乎无法找到类似的东西,现在我考虑自己编写它,因为我经常要为linux编写一个C ++应用程序并使用C函数(痛苦的错误检查),或者每次都自己包装它们
--- --- EDIT
QT和Boost都不会在系统上编译,我们正在使用它 - 它是一个基于2.4.29安装在嵌入式计算机上的小型Linux内核。
答案 0 :(得分:4)
嗯,不完全是一个包装器,但Boost有一个library for everything,并支持所有主要平台。
答案 1 :(得分:4)
Boost有许多便携式界面,可用于您需要的一些内容,例如: Boost.Interprocess或Boost.Asio。
答案 2 :(得分:3)
试试Common C++。我自己没有用它,但它支持你提到过的东西。
答案 3 :(得分:1)
Qt解决了许多通常与平台相关的问题。 GUI明智,但控制台的东西也被涵盖。 e.g:
答案 4 :(得分:1)
posixcpp。现在还处于初期阶段。它不是跨平台,而是面向GCC和Linux。根据LGPL 3许可。
答案 5 :(得分:0)
有Qt - 这不仅仅是一个GUI库。诺基亚称之为“应用程序和UI框架”。 “应用程序”部分是指Qt包装文件,套接字,线程等接口。
Qt是C ++,而恕我直言是最好的C ++代码基础之一,因此绝对值得一试。