<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta name="LASTUPDATED" content="06/17/05 11:09:43" />
<title>opt_classresults</title>
<link rel="StyleSheet" href="../../book.css" type="text/css"/>
</head>
<body>
<h3>opt_classresults</h3>
<p> Controls the omission of the copy constructor call for class return types if all return statements in a function return the same local class object. </p>
<h5>Syntax</h5>
<p class="code">#pragma opt_classresults on | off | reset
</p>
<h5>Targets</h5>
All platforms.<br />
<h5>Remarks</h5>
<p>Example of using <span class="code">#pragma opt_classresults</span>:</p>
<div class="listing">
<p>#pragma opt_classresults on</p>
<p>struct X {<br />
X();<br />
X(const X&);<br />
// ...<br />
};</p>
<p>X f() {<br />
X x; // directly constructed in function result buffer<br />
// ...<br />
return x; // no copy-ctor call<br />
}</p>
</div>
<p> This pragma does not correspond to any panel setting. To check this setting, use <span class="code">__option (opt_classresults)</span><span class="code"></span>, described in <a href="../symbols/sym_settings.htm">Checking Settings</a>. The default setting is on.</p>
<div id="footer">Copyright © 2009 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. <br>License: <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a></div>
</body>
</html>