C++封装POSIX和Linux特定函数

6
你知道有哪些好的库将posix和linux函数和结构(例如套接字或文件描述符)封装成C++类吗?例如,我正在考虑一个基本的FileDescriptor类和一些继承类(如unix套接字等),其中包含像write、read甚至一些系统调用(sendfile、splice)这样的方法——所有这些方法都会抛出异常,而不是设置errno。或者一些共享内存类等。
我似乎找不到这样的东西,现在我考虑自己编写它,因为我经常需要为Linux编写C++应用程序,要么使用C函数(繁琐的错误检查),要么每次自己封装它们。
---编辑---
嗯,无论是QT还是Boost,在我们使用的系统上都无法编译——我们使用的是基于2.4.29的小型Linux内核,安装在嵌入式计算机上。

为什么要进行封装,如果它不打算跨平台呢?此外,在 C 代码中处理错误并没有确保 C++ 代码的异常安全性那么痛苦。 - Alex B
6个回答

4

其实不完全是一个包装器,但是Boost有一个用于一切,并支持所有主要平台。


4

3

尝试使用Common C++。虽然我自己没有使用过,但它支持你提到的功能。


那应该就是我在寻找的,谢谢。 - zbigh

2

posixcpp。它目前处于早期阶段。它不是跨平台的,但面向GCC和Linux。根据LGPL 3许可。


1

0

Qt - 它不仅仅是一个GUI库。诺基亚称其为“应用程序和UI框架”。 “应用程序”部分指的是Qt对文件、套接字、线程等接口的封装。

Qt是C++,在我看来是最好设计的C++代码库之一,所以它绝对值得一试。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接