在C++中通常用某种前缀命名成员变量来表示它们是成员变量而不是局部变量或参数.如果你来自MFC背景,你可能会使用m_foo.我myFoo偶尔也见过.
C#(或者可能只是.NET)似乎建议只使用下划线,如_foo.这是否允许C++标准?
我有关于C1x互斥量的以下问题(§7.25.4):
在哪些情况下可以mtx_lock()返回thrd_busy而不是阻止?在哪些情况下可以mtx_timedlock()返回thrd_busy?
注意,thrd_busy在§7.25.15中定义为" 当测试和返回函数请求的资源已被使用时 ".
我希望thrd_busy只返回mtx_trylock(),或者最多也只能通过mtx_lock()一个mtx_try或mtx_try | mtx_recursive互斥锁调用,但绝对不是来自mtx_timedlock(),这需要一个支持超时的互斥锁,即一个mtx_timed或mtx_timed | mtx_recursive互斥锁.
这只是草案中的公正和疏忽吗?或者我错过了什么?