我通过自学习std :: make_unique功能,我在cppreference.com
找到了以下声明template< class T, class... Args >
unique_ptr<T> make_unique( Args&&... args );
我完全无法理解上述方法/功能的签名。
答案 0 :(得分:2)
有很多&#34;新&#34;本声明中使用的功能:
Movie.joins(:genres).where({genres: { name: ['comedy', 'drama']}})
Movie.joins(:genres, :theaters).where({genres: { name: ['comedy', 'drama']}}).
where({theaters: { city: 'NY' }})
关键字;请参阅https://en.wikipedia.org/wiki/Template_(C%2B%2B))<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<RelativeLayout
android:id="@+id/outer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_toLeftOf="@+id/button"
android:padding="5dp"
android:background="#08445e">
<TextView
android:id="@+id/textViewRoom"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:text="Room {room}"
android:textColor="#fff" />
<TextView
android:id="@+id/textViewTime"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:text="Time: {Time} sec"
android:textColor="#fff" />
</RelativeLayout>
<RelativeLayout
android:id="@+id/inner"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_below="@+id/outer"
android:layout_toLeftOf="@+id/button"
android:layout_toStartOf="@+id/button"
android:background="#d1d1d1">
<TextView
android:id="@+id/textViewRequest"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:textColor="#000"
android:text="{View 1}"
android:textSize="20sp" />
</RelativeLayout>
</LinearLayout>
参数;请参阅https://en.wikipedia.org/wiki/Variadic_template)template
,请参阅https://en.wikipedia.org/wiki/Smart_pointer)...
,请参阅https://en.wikipedia.org/wiki/C%2B%2B11#Rvalue_references_and_move_constructors)基本上,代码表示&#34;为具有任意类型的任意数量参数的函数声明模板,并返回专用于给定类型T&#34;的unique_ptr。此外,右值参考(&amp;&amp;)告诉您将移动参数而不是复制参数。
简而言之:unique_ptr
与Args&&
基本相同。