如何做"Type Definition"

How to do "Type Definition"

本文关键字:Definition Type 何做      更新时间:2023-10-16

我正在使用数学库 Eigen,我在很多文件中使用了很多具有模板类型Eigen::Vector<T, -1, 1>的动态vector。使用这种表示法,我的代码非常密集,所以我有两个问题:

我应该做一个类型定义,以便使用 Vector<T> = Eigen::Vector<T, -1, 1> 获得更短、更合适的代码吗?但是通过这种修改,我的代码将更难理解。

如果我做这个类型定义,我应该在哪里做?因为我使用外部库(Eigen),所以修改库文件不是一个好的解决方案,但是为此的自定义文件看起来很脏。

学会爱上冗长的符号Eigen::Vector。这样,您就可以确切地知道自己在处理什么。

从长远来看,使用 using 语句(尤其是在头文件中)往往会导致代码难阅读(你能记住你指的是哪个命名空间吗?),并且还会导致潜在的命名空间冲突。

相同的样式适用于 std 命名空间中的事物。