Hola David,<br><br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><u>Estil de codificació:</u></div><div><ul><li><span style="color:rgb(34,34,34);font-size:13px;font-family:arial,sans-serif">Declarar les constants i les macros al principi del .cpp i no intercalat entre</span><span style="color:rgb(34,34,34);font-size:13px;font-family:arial,sans-serif"> les definicions dels mètodes.</span></li>


<li><span style="color:rgb(34,34,34);font-size:13px;font-family:arial,sans-serif">Inicialitzar tots els arrays <i>char</i> o <i>wchar_t</i> a 0 (per exemple, <i>char</i></span><span style="color:rgb(34,34,34);font-size:13px;font-family:arial,sans-serif"><i> szText[1024] = {0};</i>). En <i>debug </i>el compilador ja ho fa però en </span><span style="color:rgb(80,0,80);font-size:13px;font-family:arial,sans-serif"><i>release</i> no i aquesta és una font comú d'errors.</span></li>
</ul></div></blockquote><div><br>Totalment d'acord, qualsevol cosa que no vegis en aquesta àrea soluciona-ho si us plau.</div><div><br>Si ho pots també documentar aquí: </div><div><a href="https://github.com/Softcatala/CatalanitzadorPerAWindows/blob/master/CODING_STANDARDS">https://github.com/Softcatala/CatalanitzadorPerAWindows/blob/master/CODING_STANDARDS</a></div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><ul>

</ul></div><div><br></div><div><u>Refactorització wchar_t:</u></div><div><ul><li><span style="color:rgb(34,34,34);font-size:13px;font-family:arial,sans-serif">En les classes derivades de <i>Action </i>no s'inicialitza <i>szName </i>i <i>szDescription </i>fins que es truca als mètodes <i>GetName</i>() i <i>GetDescription</i>(). És per alguna cosa en concret? Si el valor pot canviar dinàmicament d'acord té sentit, però si el seu valor és invariant durant la vida del objecte té més sentit inicialitzar-ho en el constructor de cada classe derivada. Més encara el <i>GetName</i>() i <i>GetDescription</i>() es podrien implementar a la classe base sense declarar-los com virtuals purs (Self Encapsulate Field pattern) i que cada classe derivada inicialitzi al constructor el valor que necessiti. D'aquesta manera també simplifiques la implementació de les classes derivades de <i>Action</i>, ja que no cal implementar aquests dos mètodes virtuals.</span></li>
</ul></div></blockquote><div>Sí, endavant. Em semblen bé els canvis.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><ul>

</ul></div><div><u>Errors:</u></div><div><ul><li><span style="color:rgb(34,34,34);font-size:13px;font-family:arial,sans-serif">Al mètode WindowsLiveAction::</span><span style="color:rgb(34,34,34);font-size:13px;font-family:arial,sans-serif">GetDescription() hi ha un petit bug. Hauria de ser: </span><i style="color:rgb(34,34,34);font-size:13px;font-family:arial,sans-serif">return _getStringFromResourceIDName(IDS_WINDOWSLIVE_DESCRIPTION, <b>szDescription</b>)</i></li>
</ul></div></blockquote><div>Sí, és un error. Si pots solucionar això com a primer commit.<br><br>T'he donat permís, pots pujar coses directament.</div><div><br></div><div><br></div><div>Jordi, </div><div><br></div><div>
<br></div><div> </div></div>