gpt4 book ai didi

c++ - 为每个变量创建一个新的 typedef 有什么意义?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:53:38 25 4
gpt4 key购买 nike

标题有点夸张,还是没看懂

作为一个最基本的例子,从 time.h 中获取 size_t 类型:

size_t <...> is defined in the header file (among others) as an unsigned integral type.

甚至将 unsigned int 重命名为 size_t 有什么意义?这些事情通常会使代码更难理解,因为它们会让开发人员寻找那些类型声明来理解,即使它是重命名的基本类型,或者可能是某些类/结构。然而,我看到这在不同的图书馆中已经做了很多。

最佳答案

What's the point of even renaming unsigned int to size_t? Such things often make the code harder to understand

  1. 它使代码更容易理解,您立即知道对象代表什么,“它是某种大小”。将其与裸 int 进行比较。真正的底层类型不是直接关注的问题:只要您不知道它,您的代码就仍然是可移植的

  2. 今天它可能是一个 unsigned int 但明天它可能会是一个 unsigned long long。只要您的程序使用正确的类型,它就不会过时

they make a developer look for those type declarations

别看:您会很想用它做一些不可携带的事情。以您看待 C++ std::string 的方式来看待它。您知道它的作用,您知道如何使用它,但您并不真正了解其中的内容。

关于c++ - 为每个变量创建一个新的 typedef 有什么意义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12122443/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com