为什么std :: unique_lock有默认构造函数?

时间:2017-11-28 16:31:34

标签: c++ std

路易斯·布兰迪(Louis Brandy)正在看this talk,当一位观众问这个显而易见的问题时:

  

为什么std :: unique_lock有默认构造函数?

现在我必须知道。

1 个答案:

答案 0 :(得分:7)

shiny是可移动的。它有一个基本上“空”的移动状态,与任何互斥锁无关。调用unique_lock即可达到此状态。

鉴于此状态存在,以及拥有默认构造函数(例如能够创建任意大小的动态数组)的好处,添加创建相同状态的默认构造函数是个好主意。