Zirnc's Blog

Recent content on Zirnc's Blog

马上订阅 Zirnc's Blog RSS 更新: https://blog.chungzh.cn/index.xml

优雅地使用 C++ 制作表格:tabulate

2020年2月21日 19:45

0x00 介绍 tabulate

tabulate 是一个使用 C++ 17 编写的库,它可以制作表格。使用它,把表格对齐、格式化和着色,不在话下!你甚至可以使用 tabulate,将你的表格导出为 Markdown 代码。下图是一个使用 tabulate 制作的表格输出在命令行的样例:

summary

当然,除了表格,你还可以玩出花样。看见下面这个马里奥了吗?这也是用 tabulate 制作的!源码在 这里

mario

0x10 准备

首先你需要安装 CMake

创建一个文件夹(下文用 X 代替),作为你使用 tabulate 的地方。再将 include 这个文件夹下载到 X 里。然后在 X 里创建 main.cpp 以及一个 CMakeLists.txt

注意:需要下载 include 整个文件夹而不是仅仅下载 tabulate 文件夹

你可以点击 这里 下载 tabulate 项目,然后将 include 文件夹复制到 X 中。

将下面的代码复制进 CMakeLists.txt

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
cmake_minimum_required(VERSION 3.8)

# 这里的 tabulateDemo 可以换为你喜欢的名字
project(tabulateDemo)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED True)

include_directories(include)

add_executable(main main.cpp)

最后 X 文件夹的结构应该是这样的:

1
2
3
4
5
.
├── CMakeLists.txt
├── include
│ └── tabulate
└── main.cpp

认真核对好 X 的结构!

可前往 ChungZH/tabulatedemo 核对文件结构。

0x20 小试身手

将下面这段代码复制进 main.cpp 中:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
#include "tabulate/table.hpp"
using namespace std;
using namespace tabulate;
int main()
{
 Table hellogithub...

剩余内容已隐藏

查看完整文章以阅读更多