void push( const value_type& value );
void push( value_type&& value );
< /code>
вместо единой функции члена со ссылкой на пересылку? < /p>
void push( T&& value );
Почему push for std :: queue определяется как [code]void push( const value_type& value ); void push( value_type&& value ); < /code> вместо единой функции члена со ссылкой на пересылку? < /p> void push( T&& value ); [/code] Основная совместимость - основная причина?
При написании потокобезопасной оболочки std::stack я сделал следующие две перегрузки для push:
void push(const value_type& value)
{
auto guard = std::scoped_lock{_mutex};
_stack.push(value);
_cv.notify_one();
}
Минимальный воспроизводимый раздел - это кодовый блок в нижней части тела вопроса над ссылкой OneDrive. Я вставил комментарии, чтобы помочь вам понять, что делается и как это связано с полным кодом.
Целью моей программы Python является ввод ввода...
Минимальный воспроизводимый раздел - это кодовый блок в нижней части тела вопроса над ссылкой OneDrive. Я вставил комментарии, чтобы помочь вам понять, что делается и как это связано с полным кодом.
Целью моей программы Python является ввод ввода...
Реализация libstdc ++ std :: ranges :: ref_view , следуя стандарту C ++, включает в себя следующий код:
template requires is_object_v
class ref_view : public view_interface
{
private:
_Range* _M_r;
Реализация libstdc ++ std :: ranges :: ref_view , следуя стандарту C ++, включает в себя следующий код:
template requires is_object_v
class ref_view : public view_interface
{
private:
_Range* _M_r;