Files
hustoj/web/cppreference-zh/chmhelp/cpp-named_req-copyconstructible.html
2025-08-01 12:57:54 +08:00

82 lines
6.4 KiB
HTML

<!DOCTYPE html>
<html lang="zh" dir="ltr" class="client-nojs" xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh">
<head><meta http-equiv="x-ua-compatible" content="ie=edge">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>C++ &#20855;&#21517;&#35201;&#27714;&#65306;&#21487;&#22797;&#21046;&#26500;&#36896; (CopyConstructible)</title>
<link rel="stylesheet" href="ext.css" />
<link rel="stylesheet" href="site_modules.css" />
</head>
<body class="mediawiki ltr sitedir-ltr ns-0 ns-subject page-cpp_named_req_CopyConstructible skin-cppreference2 action-view cpp-navbar">
<div id="cpp-content-base">
<div id="content"><a id="top"></a>
<h1 id="firstHeading" class="firstHeading"><span style="font-size:0.7em; line-height:130%">C++ &#20855;&#21517;&#35201;&#27714;&#65306;</span><span style="font-style:italic">&#21487;&#22797;&#21046;&#26500;&#36896;</span> <span style="font-family: Georgia, &#39;DejaVu Serif&#39;, serif; font-style:italic">(CopyConstructible)</span></h1>
<div id="bodyContent">
<div id="contentSub"><span class="subpages">&lt; <a href="cpp.html">cpp</a>&lrm; | <a href="cpp-named_req.html">named req</a></span></div>
<div id="mw-content-text" lang="zh" dir="ltr" class="mw-content-ltr" xml:lang="zh">
<p>&#25351;&#23450;&#35813;&#31867;&#22411;&#30340;&#23454;&#20363;&#21487;&#20197;&#20174;<a href="cpp-language-value_category.html">&#24038;&#20540;&#34920;&#36798;&#24335;</a>&#36827;&#34892;&#22797;&#21046;&#26500;&#36896;&#12290;</p>
<h3><span class="mw-headline" id=".E8.A6.81.E6.B1.82">&#35201;&#27714;</span></h3>
<p>&#20197;&#19979;&#24773;&#20917;&#19979;&#65292;&#31867;&#22411; <code>T</code> &#28385;&#36275;<span style="font-style:italic">&#21487;&#22797;&#21046;&#26500;&#36896;</span> <span style="font-family: Georgia, &#39;DejaVu Serif&#39;, serif; font-style:italic">(CopyConstructible)</span> &#65306;</p>
<ul>
<li>&#31867;&#22411; <code>T</code> &#28385;&#36275;<a href="cpp-named_req-MoveConstructible.html"><span style="font-style:italic">&#21487;&#31227;&#21160;&#26500;&#36896;</span> <span style="font-family: Georgia, &#39;DejaVu Serif&#39;, serif; font-style:italic">(MoveConstructible)</span></a> &#65292;&#19988;</li>
</ul>
<p>&#32473;&#23450;</p>
<ul>
<li><code>v</code>&#65292;&#20026; <code>T</code> &#25110; <code>const T</code> &#31867;&#22411;&#30340;<a href="cpp-language-value_category.html">&#24038;&#20540;</a>&#34920;&#36798;&#24335;&#25110; <code>const T</code> &#31867;&#22411;&#30340;<a href="cpp-language-value_category.html">&#21491;&#20540;</a>&#34920;&#36798;&#24335;</li>
<li>&#20219;&#24847;&#26631;&#35782;&#31526; <code>u</code></li>
</ul>
<p>&#19979;&#21015;&#34920;&#36798;&#24335;&#24517;&#39035;&#21512;&#27861;&#19988;&#25317;&#26377;&#20854;&#25351;&#23450;&#30340;&#25928;&#26524;</p>
<table class="wikitable">
<tr>
<th>&#34920;&#36798;&#24335;</th>
<th>&#21518;&#26465;&#20214;</th>
</tr>
<tr>
<td><span class="t-c"><span class="mw-geshi cpp source-cpp">T u <span class="sy1">=</span> v<span class="sy4">;</span></span></span></td>
<td><code>u</code> &#30340;&#20540;&#31561;&#20215;&#20110; <code>v</code> &#30340;&#20540;&#12290;&#19981;&#26356;&#25913; <code>v</code> &#30340;&#20540;&#12290;</td>
</tr>
<tr>
<td><span class="t-c"><span class="mw-geshi cpp source-cpp">T<span class="br0">(</span>v<span class="br0">)</span></span></span></td>
<td><code>T(v)</code> &#30340;&#20540;&#31561;&#20215;&#20110; <code>v</code> &#30340;&#20540;&#12290;&#19981;&#26356;&#25913; <code>v</code> &#30340;&#20540;&#12290;</td>
</tr>
</table>
<table class="t-rev-begin">
<tr class="t-rev t-until-cxx11">
<td>
<p>&#34920;&#36798;&#24335; <span class="t-c"><span class="mw-geshi cpp source-cpp">v.~T<span class="br0">(</span><span class="br0">)</span></span></span> &#20134;&#24517;&#39035;&#21512;&#27861;&#65292;&#19988;&#23545;&#20110;&#24038;&#20540; <code>v</code>&#65292;&#34920;&#36798;&#24335; <code>&amp;v</code> &#24517;&#39035;&#20855;&#26377; <span class="t-c"><span class="mw-geshi cpp source-cpp">T<span class="sy2">*</span></span></span> &#25110; <span class="t-c"><span class="mw-geshi cpp source-cpp"><span class="kw4">const</span> T<span class="sy2">*</span></span></span> &#31867;&#22411;&#65292;&#19988;&#24517;&#39035;&#27714;&#20540;&#20026; <code>v</code> &#30340;&#22320;&#22336;&#12290;</p>
</td>
<td><span class="t-mark-rev t-until-cxx11">(C++11 &#21069;)</span></td>
</tr>
</table>
<h3><span class="mw-headline" id=".E6.B3.A8.E8.A7.A3">&#27880;&#35299;</span></h3>
<p>C++11 &#21069;&#65292;&#37325;&#36733;&#20102; <code>operator&amp;</code> &#30340;&#31867;&#24182;&#38750;<span style="font-style:italic">&#21487;&#22797;&#21046;&#26500;&#36896;</span> <span style="font-family: Georgia, &#39;DejaVu Serif&#39;, serif; font-style:italic">(CopyConstructible)</span> &#65292;&#20174;&#32780;&#19981;&#21487;&#29992;&#20110;&#26631;&#20934;&#24211;&#23481;&#22120;&#12290;C++11 &#24320;&#22987;&#65292;&#26631;&#20934;&#24211;&#22312;&#20961;&#26159;&#38656;&#35201;&#23545;&#35937;&#22320;&#22336;&#26102;&#37117;&#20351;&#29992; <span class="t-lc"><a href="cpp-memory-addressof.html">std::addressof</a></span>&#12290;</p>
<h3><span class="mw-headline" id=".E5.8F.82.E9.98.85">&#21442;&#38405;</span></h3>
<table class="t-dsc-begin">
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-types-is_copy_constructible.html"><span class="t-lines"><span>is_copy_constructible</span><span>is_trivially_copy_constructible</span><span>is_nothrow_copy_constructible</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span><span><span class="t-mark-rev t-since-cxx11">(C++11)</span></span></span></div>
</div>
</td>
<td>&#26816;&#26597;&#31867;&#22411;&#26159;&#21542;&#25317;&#26377;&#22797;&#21046;&#26500;&#36896;&#20989;&#25968;<br />
<span class="t-mark">(&#31867;&#27169;&#26495;)</span></td>
</tr>
<tr class="t-dsc">
<td>
<div class="t-dsc-member-div">
<div><a href="cpp-concepts-copy_constructible.html"><span class="t-lines"><span>copy_constructible</span></span></a></div>
<div><span class="t-lines"><span><span class="t-mark-rev t-since-cxx20">(C++20)</span></span></span></div>
</div>
</td>
<td>&#25351;&#23450;&#33021;&#22797;&#21046;&#26500;&#36896;&#21644;&#31227;&#21160;&#26500;&#36896;&#19968;&#20010;&#31867;&#22411;&#30340;&#23545;&#35937;<br />
<span class="t-mark">(&#27010;&#24565;)</span></td>
</tr>
</table>
</div>
<div class="visualClear"></div>
</div>
</div>
</div>
</body>
</html>