在 X11 下使用 cairo 引擎绘制图形

cairo是一个方便和高性能的第三方C库。它可以作为绘制引擎,帮助我们绘制各种图形,并且提供多种输出方式。本文将在Linux下结合X11图形显示协议绘制简单的图形。

这是效果图:

59cb53826fcba1602fd3769171f5f127
阅读全文

C++ Primer

第一章 开始

编写一个简单的C++程序

1
2
3
4
int main()
{
return 0;
}

每个C++程序都包含一个或多个函数,其中一个必须命名为main.

阅读全文

C++ 20 高级编程

第一章 C++和标准库速成

C++速成

小程序"Hello World"

主要是接触引入模块的概念,程序如下:

1
2
3
4
5
6
7
8
9
// hello.cpp
import <iostream>; // 引入模块,目前的gcc不支持
// #include <iostream>

int main() {
std::cout << "hello world" << std::endl;

return 0;
}
阅读全文

TCP IP 网络编程

前言

里面需要很多计算机网络的知识,我也懒得写了,在计算机网络复习当中有写到,这是文章的链接:计算机网络期末复习

第一章 理解网络编程和套接字

理解网络编程和套接字

网络编程的目的就是使两台联网的计算机相互交换数据。首先需要物理连接,这一点已经达到了,基本上所有的电脑都是连通庞大的互联网的,所以这一点不需要担心;在此基础上我们只需要考虑如何使用程序来将两个主机建立连接即可,操作系统会给我们提供名为套接字(socket)的部件。

阅读全文

LDir 和 LFileInfo 的语义和设计

LarkSDKFileSystem中关于LDir和LFileInfo的语义和设计的总结。

语义明确

QDirQFileInfo的语义一直以来都比较令人费解。我们知道文件和目录的关系是:目录是一种特殊的文件。按照QDirQFileInfo的命名来讲,应该是QDir管理目录,QFileInfo管理文件,但是实际上这两个类的功能是非常混乱的,QDir可以操作文件,QFileInfo也可以操作目录。而初版的LDirLFileInfo也是完全按照QT的思维走的,因此导致该部分的语义非常混乱,让我们和用户感到非常费解。

阅读全文
使用搜索:必应百度