c++ - 在 C++ 中命名 int 或 char 变量时, "n"或 "ch"前缀是常见前缀吗?

标签 c++ variables naming prefixes

我目前正在浏览 learncpp.com 的 C++ 教程,我看到他们的变量命名趋势是使用“n”前缀(即 int nValue)和“ch”前缀为 char 变量(即 char chOperation)命名 int 变量。这是不是我现在应该养成的行业普遍现象?

最佳答案

Is this something that is commonplace in the industry?

由于对 somewhat more useful convention 的误解,这种做法在二十或三十年前的 Microsoft 某些部门很常见。公司其他部分使用(标记变量表明它们的用途,在弱类型语言中,这有助于避免各种类别错误)。这两种约定在 C++ 等强类型语言中都没有任何用处:类型系统可以自动且更可靠地捕获此类错误。

在微软(大概)意识到它毫无意义并且 advised against its use 很久之后,它就被其他人广泛使用了。 ,大概是相信效仿微软的习惯也可能效仿他们的成功。时至今日,养成习惯且从不质疑其实用性的人们以及将风格指南优先于软件的公司仍然偶尔会看到它。

就我个人而言,我发现它作为警告很有用,因为代码可能包含更可怕的内容。

I should form as a habit now?

它只会让代码更难阅读,如果您在更改变量类型时忘记更新标签,还会产生误导。您应该养成编写清晰、可读代码的习惯,而不是在代码中撒上神秘的 rune 。

免责声明:有关 Microsoft 的简短评论旨在提供历史背景,并非旨在成为 Microsoft 政策决定的权威说明;特别是短语“[Microsoft] 意识到 [it] 毫无意义”的意思是“[Microsoft 的一些人] 意识到 [正在讨论的主题,在大多数情况下在现代 C++ 中使用冗余类型标签] 是毫无意义的”而不是(作为评论者似乎已经读过)“[整个微软]意识到[变量标记的所有使用]是毫无意义的”。所有意见都是我自己的,可能基于不完善的知识。

关于c++ - 在 C++ 中命名 int 或 char 变量时, "n"或 "ch"前缀是常见前缀吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18284409/

相关文章:

java - 为什么从变量获取值比从数组获取值更受欢迎?

R:如何去除字符串中的问号 block ?

java - 返回元素集合的 Java 方法的正确命名约定是什么?

ARM 设备上代码优化的 C++ 技巧

sql - SQL 中的列变量数组

linux - 从变量中获取特定的第 N 个词

go - 接口(interface)命名约定 Golang

c++ - 我可以在指针类型的声明中省略 const 限定符吗?

c++ - select() 在一个简单的自制 p2p 程序中与 udp 交换 "musicdata"的问题

c++ - 在 for 循环中使用 auto 和 decltype(vector.size()) 处理字符串 vector