提问人:Raedwald 提问时间:5/18/2018 最后编辑:Raedwald 更新时间:5/19/2018 访问量:1676
nullptr 或 nullptr [closed]
A nullptr or the nullptr [closed]
问:
如果我说的是 nullptr
,正确的术语是 the (只有一个,并且所有提及都是对同一事物的引用) 还是 a (有几个相同的事物)。nullptr
nullptr
也就是说,函数文档应该说
如果 ptr 是 ,则该函数使用内部缓冲区...
nullptr
或
如果 ptr 是 ,则该函数使用内部缓冲区...
nullptr
(迂腐地,这不是一个基于意见的问题,因为它可以通过参考到底是什么来回答)nullptr
答:
nullptr
是一个关键字,它指定 类型的 prvalue。因此,从形式上讲,指针不能是 [a|the] 。但是,它可以“为 null”(或“具有 null 值”)。std::nullptr_t
nullptr
在您的文档示例中,我只想说
如果 ptr 为 null,则函数 ...
请注意,(因此)甚至不是指针类型!它是一种特殊类型,可以转换为指向对象的任何指针、指向函数的指针或指向成员的指针。我认为这是不谈论指针的额外理由;指针只是 null。std::nullptr_t
nullptr
nullptr
评论
nullptr
std::nullptr_t
该标准本身交替使用三种形式,但没有一种是“is a nullptr”或“is the nullptr”。如果你使用这三个中的任何一个,你就是一个很好的伙伴。
为 null
int_type underflow();
7 备注:仅当 is null 或
basic_streambuf
gptr()
gptr() >= egptr()
是 null 指针
int sync();
38 种效果:[...]构造一个哨兵对象后,如果为空指针,则返回 .[...]
rdbuf()
-1
是nullptr
void lock();
3 投掷:[...] 错误条件为 if 为 。[...]
system_error
operation_not_permitted
pm
nullptr
评论
pm
nullptr
pm
nullptr
pm
nullptr
说“a”可能有意义的一种上下文是,每个指针类型都有一个指针值,并且这些值不一定对每个实现中的所有类型都相同。(尽管您必须返回近五十年前的一些过时计算机才能找到例外情况。有人可能会称 “a ” 和 “a ”,即使它们都不与 type 的常量完全相同。无论如何,我会把它发音为“指针”。nullptr
NULL
int* maybe_int_p = nullptr;
nullptr
char* maybe_string_p = nullptr;
nullptr
nullptr_t
NULL
即便如此,你仍然会在明确你的意思的上下文中说“the”。nullptr
至于实际使用情况,Google ngram 查看器找不到任何示例。正如前面的回答所指出的,这两个术语都不是官方术语。因此,没有既定的用法可循,对我来说也没有任何声音,人们也不会有任何困难来理解你的意思。如果你指的是关键字,那就是一个单例,所以称它为“the”感觉更合乎逻辑。但使用您喜欢的任何一种。nullptr
上一个:无抛出 VirtualMachineError 保证
下一个:未来与单声道的区别
评论
language-lawyer
x is the 5
x is a 5