<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent posts to Properties that return Reference Types. What are the various Behaviors?</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/72c52cb880/" rel="alternate"/><link href="https://forge.codesys.com/forge/talk/Engineering/thread/72c52cb880/feed.atom" rel="self"/><id>https://forge.codesys.com/forge/talk/Engineering/thread/72c52cb880/</id><updated>2021-11-17T21:26:37.510000Z</updated><subtitle>Recent posts to Properties that return Reference Types. What are the various Behaviors?</subtitle><entry><title>Properties that return Reference Types. What are the various Behaviors?</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/72c52cb880/?limit=25#1e14" rel="alternate"/><published>2021-11-17T21:26:37.510000Z</published><updated>2021-11-17T21:26:37.510000Z</updated><author><name>thecolonel26</name><uri>https://forge.codesys.com/u/thecolonel26/</uri></author><id>https://forge.codesys.comb0c62e720cdf5035002df2996cfafb809d09bc60</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Per the warning &lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="n"&gt;C0410&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="n"&gt;COMPATIBILITY&lt;/span&gt; &lt;span class="n"&gt;WARNING&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="n"&gt;A&lt;/span&gt; &lt;span class="n"&gt;write&lt;/span&gt; &lt;span class="n"&gt;access&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="n"&gt;Property&lt;/span&gt; &lt;span class="n"&gt;of&lt;/span&gt; &lt;span class="n"&gt;type&lt;/span&gt; &lt;span class="n"&gt;REFERENCE&lt;/span&gt; &lt;span class="n"&gt;calls&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;SET&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;Accessor&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;versions&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="mf"&gt;3.1&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="mf"&gt;4022.0&lt;/span&gt; &lt;span class="n"&gt;and&lt;/span&gt; &lt;span class="n"&gt;writes&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;reference&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="n"&gt;but&lt;/span&gt; &lt;span class="n"&gt;calls&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;GET&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="n"&gt;Accessor&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;versions&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;=&lt;/span&gt; &lt;span class="mf"&gt;3.1&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="mf"&gt;4022.0&lt;/span&gt; &lt;span class="n"&gt;and&lt;/span&gt; &lt;span class="n"&gt;writes&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;value&lt;/span&gt;&lt;span class="o"&gt;!&lt;/span&gt; &lt;span class="n"&gt;Use&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;operator&lt;/span&gt; &lt;span class="n"&gt;REF&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="n"&gt;you&lt;/span&gt; &lt;span class="n"&gt;want&lt;/span&gt; &lt;span class="n"&gt;to&lt;/span&gt; &lt;span class="n"&gt;assign&lt;/span&gt; &lt;span class="n"&gt;the&lt;/span&gt; &lt;span class="n"&gt;reference&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;Say the Get is defined as&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="err"&gt;BlahBlahFB Ref= _blahblahFB;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;and the Set is defined as &lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="err"&gt;_blahblahFB := BlahBlahFB;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;&lt;strong&gt;What is the behavior of that vs below?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Get is defined as&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="err"&gt;BlahBlahFB := _blahblahFB;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;and Set is defined as &lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="err"&gt;_blahblahFB := BlahBlahFB;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;Or Verses this?&lt;/p&gt;
&lt;p&gt;Get is defined as&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="err"&gt;BlahBlahFB := _blahblahFB;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;and Set is defined as &lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="err"&gt;_blahblahFB := BlahBlahFB;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;&lt;strong&gt;Does the Ref= and := no longer matter in the Set and Get definition or does it still matter?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;And do you actually need a Set defined? to set the reference?&lt;/strong&gt;&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>