changkun / modern-cpp-tutorial

📚 Modern C++ Tutorial: C++11/14/17/20 On the Fly | https://changkun.de/modern-cpp/
https://changkun.de/modern-cpp/
MIT License
24.1k stars 3k forks source link

描述 `std::mutex` 的用词奇怪,应当更改 #284

Closed Mq-b closed 5 months ago

Mq-b commented 5 months ago

web 位置

原文:

std::mutex 是 C++11 中最基本的 mutex 类,通过实例化 std::mutex 可以创建互斥量

这句话的感觉基本就是胡言乱语,虽然我能明白它要表达的意思,但这是因为我本来就知道。

  1. “《std::mutex 是最基本的 mutex》”,后文又重新使用了中文的“互斥量”,要么就都互斥量即可,何必如此抽象。

  2. 通过实例化 std::mutex 可以创建互斥量”,我本人一直不喜欢这种实例化 xxx 类型创建 xxx,何不直接说:可以使用 std::mutex 类型创建互斥量对象

总而言之,简单的描述为:

changkun commented 5 months ago

Thanks and PR welcome

frederick-vs-ja commented 5 months ago

我们最好审核一下全书的“实例化”。按照标准的话只有模板化实体才有实例化。

Mq-b commented 5 months ago

我觉得这来自于目前广泛用词的不严谨与不统一,比如经常有说法是:

我编写了一个类型 T,并实例化了一个对象...

等等类似。我觉得这也源自对于 “实例”与“实例化”无法正确区分

前者常常表达式:“对象实例”,而后者,很多人无法意识到这实际上是个 C++ 中的专门术语。

大概也就是这样让“实例”与“实例化”混淆,使用者大多也不清楚这些用词。