<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet type="text/xsl" href="RSS_xslt_style.asp" version="1.0" ?>
<rss version="2.0" xmlns:WebWizForums="https://syndication.webwiz.net/rss_namespace/">
 <channel>
  <title>Codejock Developer Community : ~CXTPControlCustom() should be virtual!</title>
  <link>http://forum.codejock.com/</link>
  <description><![CDATA[This is an XML content feed of; Codejock Developer Community : Toolkit Pro : ~CXTPControlCustom() should be virtual!]]></description>
  <copyright>Copyright (c) 2006-2013 Web Wiz Forums - All Rights Reserved.</copyright>
  <pubDate>Wed, 22 Apr 2026 03:32:18 +0000</pubDate>
  <lastBuildDate>Tue, 14 Apr 2009 12:48:11 +0000</lastBuildDate>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Web Wiz Forums 12.04</generator>
  <ttl>360</ttl>
  <WebWizForums:feedURL>forum.codejock.com/RSS_post_feed.asp?TID=13978</WebWizForums:feedURL>
  <image>
   <title><![CDATA[Codejock Developer Community]]></title>
   <url>http://forum.codejock.com/forum_images/codejock-logo.gif</url>
   <link>http://forum.codejock.com/</link>
  </image>
  <item>
   <title><![CDATA[~CXTPControlCustom() should be virtual! : Hi :)  See 10.3.2 from this...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=13978&amp;PID=47883&amp;title=cxtpcontrolcustom-should-be-virtual#47883</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=6851">Oleg</a><br /><strong>Subject:</strong> 13978<br /><strong>Posted:</strong> 14 April 2009 at 12:48pm<br /><br /><DIV>Hi :)</DIV><DIV>&nbsp;</DIV><DIV>See 10.3.2 from this standard.</DIV><DIV>&nbsp;</DIV><DIV>ok, think we find out that ~CXTPControlCustom is virtual even without virtual keword. so discussion can be closed.</DIV><DIV>&nbsp;</DIV><DIV>&nbsp;</DIV>]]>
   </description>
   <pubDate>Tue, 14 Apr 2009 12:48:11 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=13978&amp;PID=47883&amp;title=cxtpcontrolcustom-should-be-virtual#47883</guid>
  </item> 
  <item>
   <title><![CDATA[~CXTPControlCustom() should be virtual! : Ok, so the destructor in A saves...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=13978&amp;PID=47876&amp;title=cxtpcontrolcustom-should-be-virtual#47876</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=2198">znakeeye</a><br /><strong>Subject:</strong> 13978<br /><strong>Posted:</strong> 14 April 2009 at 10:49am<br /><br />Ok, so the destructor in A saves you in this case, but that doesn't motivate leaving out the "virtual" keyword. I ain't gonna compete with my master (though Anakin will become stronger one day).<DIV></DIV><DIV></DIV><DIV></DIV><DIV>&nbsp;</DIV><DIV>However... <img src="http://forum.codejock.com/smileys/smiley2.gif" border="0"></DIV><DIV>International Standard ISO/IEC 14882: <a href="http://www.gisinvestor.ru/?module=File&amp;acti&#111;n=Download&amp;id=8" target="_blank">http://www.gisinvestor.ru/?module=File&amp;action=Download&amp;id=8</A></DIV><DIV><SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: 'Calibri','sans-serif'; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-ansi-: EN-US; mso-fareast-: EN-US; mso-bidi-: AR-SA"><EM>If the object being deleted has incomplete class type at the point of deletion and the complete class has a nontrivial destructor or a deallocation function the behavior is undefined.</EM></SPAN></DIV><DIV><SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: 'Calibri','sans-serif'; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-ansi-: EN-US; mso-fareast-: EN-US; mso-bidi-: AR-SA"><EM></EM></SPAN>&nbsp;</DIV><DIV><SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: 'Calibri','sans-serif'; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-ansi-: EN-US; mso-fareast-: EN-US; mso-bidi-: AR-SA">Q: Why would you NOT explicitly make the destructor virtual? If CXTPControlCustom was some day changed to inherit some other class there is a high risk the class causes problems when derived!</SPAN></DIV><DIV><SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: 'Calibri','sans-serif'; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-ansi-: EN-US; mso-fareast-: EN-US; mso-bidi-: AR-SA"></SPAN>&nbsp;</DIV><DIV><SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: 'Calibri','sans-serif'; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-ansi-: EN-US; mso-fareast-: EN-US; mso-bidi-: AR-SA">My answer: Public destructors should always be explicitly declared virtual. Just like you check pointers before using them, this is a way to avoid problems.</SPAN></DIV>]]>
   </description>
   <pubDate>Tue, 14 Apr 2009 10:49:10 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=13978&amp;PID=47876&amp;title=cxtpcontrolcustom-should-be-virtual#47876</guid>
  </item> 
  <item>
   <title><![CDATA[~CXTPControlCustom() should be virtual! : Virtual **** comparison!!!  ]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=13978&amp;PID=47870&amp;title=cxtpcontrolcustom-should-be-virtual#47870</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=1755">ABuenger</a><br /><strong>Subject:</strong> 13978<br /><strong>Posted:</strong> 14 April 2009 at 9:01am<br /><br />Virtual **** comparison!!!&nbsp;<img src="http://forum.codejock.com/smileys/smiley36.gif" border="0" align="absmiddle"><br><br>]]>
   </description>
   <pubDate>Tue, 14 Apr 2009 09:01:53 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=13978&amp;PID=47870&amp;title=cxtpcontrolcustom-should-be-virtual#47870</guid>
  </item> 
  <item>
   <title><![CDATA[~CXTPControlCustom() should be virtual! : Hi,  So you want to compete...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=13978&amp;PID=47867&amp;title=cxtpcontrolcustom-should-be-virtual#47867</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=6851">Oleg</a><br /><strong>Subject:</strong> 13978<br /><strong>Posted:</strong> 14 April 2009 at 8:33am<br /><br />Hi,<DIV>&nbsp;</DIV><DIV>So you want to compete in C++ knowledge ? :)</DIV><DIV>&nbsp;</DIV><DIV>&nbsp;<a href="http://www.brainbench.com" target="_blank">www.brainbench.com</A>&nbsp;-&gt; C++ Fundametals.</DIV><DIV>&nbsp;</DIV><DIV><DIV></DIV><DIV></DIV><TABLE style="WIDTH: 337.5pt; mso-cellspacing: 0in; mso-yfti-tbllook: 1184; mso-padding-alt: 1.5pt 1.5pt 1.5pt 1.5pt" =Ms&#111;normalTable border=1 cellSpacing=0 cellPadding=0 width=450><T><TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes"><TD style="BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; PADDING-BOTTOM: 1.5pt; : transparent; PADDING-LEFT: 1.5pt; PADDING-RIGHT: 1.5pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8; PADDING-TOP: 1.5pt" colSpan=2><TABLE style="WIDTH: 337.5pt; mso-cellspacing: 0in; mso-yfti-tbllook: 1184; mso-padding-alt: 1.5pt 1.5pt 1.5pt 1.5pt" =Ms&#111;normalTable border=0 cellSpacing=0 cellPadding=0 width=450><T><TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes"><TD style="BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; PADDING-BOTTOM: 1.5pt; : transparent; PADDING-LEFT: 1.5pt; PADDING-RIGHT: 1.5pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8; PADDING-TOP: 1.5pt" vAlign=top><P style="MARGIN: 0in 0in 0pt" =Ms&#111;normal><FONT face="Times New Roman"><B><SPAN style="COLOR: #330066; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'">Test:</SPAN></B><SPAN style="COLOR: #330066; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"> <?:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></SPAN></FONT></P></TD><TD style="BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; PADDING-BOTTOM: 1.5pt; : transparent; PADDING-LEFT: 1.5pt; PADDING-RIGHT: 1.5pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8; PADDING-TOP: 1.5pt" vAlign=top><P style="MARGIN: 0in 0in 0pt" =Ms&#111;normal><SPAN style="FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"><FONT face="Times New Roman">C++ Fundamentals <o:p></o:p></FONT></SPAN></P></TD></TR><TR style="mso-yfti-irow: 1"><TD style="BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; PADDING-BOTTOM: 1.5pt; : transparent; PADDING-LEFT: 1.5pt; PADDING-RIGHT: 1.5pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8; PADDING-TOP: 1.5pt" vAlign=top><P style="MARGIN: 0in 0in 0pt" =Ms&#111;normal><FONT face="Times New Roman"><B><SPAN style="COLOR: #330066; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'">Date: </SPAN></B><SPAN style="COLOR: #330066; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"><o:p></o:p></SPAN></FONT></P></TD><TD style="BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; PADDING-BOTTOM: 1.5pt; : transparent; PADDING-LEFT: 1.5pt; PADDING-RIGHT: 1.5pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8; PADDING-TOP: 1.5pt" vAlign=top><P style="MARGIN: 0in 0in 0pt" =Ms&#111;normal><SPAN style="FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"><FONT face="Times New Roman">10-Feb-2009 <o:p></o:p></FONT></SPAN></P></TD></TR><TR style="mso-yfti-irow: 2"><TD style="BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; PADDING-BOTTOM: 1.5pt; : transparent; PADDING-LEFT: 1.5pt; PADDING-RIGHT: 1.5pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8; PADDING-TOP: 1.5pt" vAlign=top><P style="MARGIN: 0in 0in 0pt" =Ms&#111;normal><FONT face="Times New Roman"><B><SPAN style="COLOR: #330066; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'">Score: </SPAN></B><SPAN style="COLOR: #330066; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"><o:p></o:p></SPAN></FONT></P></TD><TD style="BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; PADDING-BOTTOM: 1.5pt; : transparent; PADDING-LEFT: 1.5pt; PADDING-RIGHT: 1.5pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8; PADDING-TOP: 1.5pt" vAlign=top><P style="MARGIN: 0in 0in 0pt" =Ms&#111;normal><SPAN style="FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"><FONT face="Times New Roman">4.76 <o:p></o:p></FONT></SPAN></P></TD></TR><TR style="mso-yfti-irow: 3"><TD style="BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; PADDING-BOTTOM: 1.5pt; : transparent; PADDING-LEFT: 1.5pt; PADDING-RIGHT: 1.5pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8; PADDING-TOP: 1.5pt" vAlign=top><P style="MARGIN: 0in 0in 0pt" =Ms&#111;normal><FONT face="Times New Roman"><B><SPAN style="COLOR: #330066; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'">Weights: </SPAN></B><SPAN style="COLOR: #330066; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"><o:p></o:p></SPAN></FONT></P></TD><TD style="BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; PADDING-BOTTOM: 1.5pt; : transparent; PADDING-LEFT: 1.5pt; PADDING-RIGHT: 1.5pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8; PADDING-TOP: 1.5pt" vAlign=top><P style="MARGIN: 0in 0in 0pt" =Ms&#111;normal><SPAN style="FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"><FONT face="Times New Roman">100% C++ Fundamentals<o:p></o:p></FONT></SPAN></P></TD></TR><TR style="mso-yfti-irow: 4; mso-yfti-lastrow: yes"><TD style="BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; PADDING-BOTTOM: 1.5pt; : transparent; PADDING-LEFT: 1.5pt; PADDING-RIGHT: 1.5pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8; PADDING-TOP: 1.5pt" vAlign=top><P style="MARGIN: 0in 0in 0pt" =Ms&#111;normal><FONT face="Times New Roman"><B><SPAN style="COLOR: #330066; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'">Elapsed time: </SPAN></B><SPAN style="COLOR: #330066; FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"><o:p></o:p></SPAN></FONT></P></TD><TD style="BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; PADDING-BOTTOM: 1.5pt; : transparent; PADDING-LEFT: 1.5pt; PADDING-RIGHT: 1.5pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8; PADDING-TOP: 1.5pt" vAlign=top><P style="MARGIN: 0in 0in 0pt" =Ms&#111;normal><SPAN style="FONT-SIZE: 9pt; mso-fareast-font-family: 'Times New Roman'"><FONT face="Times New Roman">49 min 19 sec <o:p></o:p></FONT></SPAN></P></TD></TR></T></TABLE></TD></TR><TR style="mso-yfti-irow: 1; mso-yfti-lastrow: yes"><TD style="BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; PADDING-BOTTOM: 1.5pt; : transparent; PADDING-LEFT: 1.5pt; PADDING-RIGHT: 1.5pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8; PADDING-TOP: 1.5pt"><TABLE style="WIDTH: 337.5pt; mso-cellspacing: 0in; mso-yfti-tbllook: 1184; mso-padding-alt: 1.5pt 1.5pt 1.5pt 1.5pt" =Ms&#111;normalTable border=0 cellSpacing=0 cellPadding=0 width=450><T><TR style="mso-yfti-irow: 0; mso-yfti-firstrow: yes"><TD style="BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; PADDING-BOTTOM: 1.5pt; : transparent; PADDING-LEFT: 1.5pt; PADDING-RIGHT: 1.5pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8; PADDING-TOP: 1.5pt" vAlign=top colSpan=2><P style="TEXT-ALIGN: center; MARGIN: 0in 0in 0pt" =Ms&#111;normal align=center><FONT face="Times New Roman"><B><SPAN style="mso-fareast-font-family: 'Times New Roman'">C++ Fundamentals</SPAN></B><SPAN style="mso-fareast-font-family: 'Times New Roman'"><o:p></o:p></SPAN></FONT></P></TD></TR><TR style="mso-yfti-irow: 1"><TD style="BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; PADDING-BOTTOM: 1.5pt; : transparent; PADDING-LEFT: 1.5pt; WIDTH: 112.5pt; PADDING-RIGHT: 1.5pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8; PADDING-TOP: 1.5pt" width=150><P style="MARGIN: 0in 0in 0pt" =Ms&#111;normal><FONT face="Times New Roman"><B><SPAN style="mso-fareast-font-family: 'Times New Roman'">Score:</SPAN></B><SPAN style="mso-fareast-font-family: 'Times New Roman'"><o:p></o:p></SPAN></FONT></P></TD><TD style="BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; PADDING-BOTTOM: 1.5pt; : transparent; PADDING-LEFT: 1.5pt; PADDING-RIGHT: 1.5pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8; PADDING-TOP: 1.5pt"><P style="MARGIN: 0in 0in 0pt" =Ms&#111;normal><SPAN style="mso-fareast-font-family: 'Times New Roman'"><FONT face="Times New Roman">4.76<o:p></o:p></FONT></SPAN></P></TD></TR><TR style="mso-yfti-irow: 2"><TD style="BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; PADDING-BOTTOM: 1.5pt; : transparent; PADDING-LEFT: 1.5pt; WIDTH: 112.5pt; PADDING-RIGHT: 1.5pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8; PADDING-TOP: 1.5pt" width=150><P style="MARGIN: 0in 0in 0pt" =Ms&#111;normal><FONT face="Times New Roman"><B><SPAN style="mso-fareast-font-family: 'Times New Roman'">Percentile:</SPAN></B><SPAN style="mso-fareast-font-family: 'Times New Roman'"><o:p></o:p></SPAN></FONT></P></TD><TD style="BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; PADDING-BOTTOM: 1.5pt; : transparent; PADDING-LEFT: 1.5pt; PADDING-RIGHT: 1.5pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8; PADDING-TOP: 1.5pt"><P style="MARGIN: 0in 0in 0pt" =Ms&#111;normal><SPAN style="mso-fareast-font-family: 'Times New Roman'"><FONT face="Times New Roman">Scored higher than 97% of previous examinees<o:p></o:p></FONT></SPAN></P></TD></TR><TR style="mso-yfti-irow: 3"><TD style="BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; PADDING-BOTTOM: 1.5pt; : transparent; PADDING-LEFT: 1.5pt; PADDING-RIGHT: 1.5pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8; PADDING-TOP: 1.5pt" colSpan=2><P style="TEXT-ALIGN: center; MARGIN: auto 0in" =rower align=center><FONT face="Times New Roman"><img src="http://forum.codejock.com/avmedia/images/bb/1pixel.gif" border="0"><o:p></o:p></FONT></P></TD></TR><TR style="mso-yfti-irow: 4"><TD style="BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; PADDING-BOTTOM: 1.5pt; : transparent; PADDING-LEFT: 1.5pt; PADDING-RIGHT: 1.5pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8; PADDING-TOP: 1.5pt" colSpan=2><P style="MARGIN: 0in 0in 0pt" =Ms&#111;normal><SPAN style="mso-fareast-font-family: 'Times New Roman'"><FONT face="Times New Roman">Demonstrates understanding of most advanced concepts within the subject area. Appears capable of mentoring others on the most complex projects.<o:p></o:p></FONT></SPAN></P></TD></TR><TR style="mso-yfti-irow: 5" name="str&#111;ng_areas_row"><TD style="BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; PADDING-BOTTOM: 1.5pt; PADDING-LEFT: 1.5pt; PADDING-RIGHT: 1.5pt; : #e0e0e0; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8; PADDING-TOP: 1.5pt" vAlign=top><P style="MARGIN: 0in 0in 0pt" =Ms&#111;normal><FONT face="Times New Roman"><B><SPAN style="mso-fareast-font-family: 'Times New Roman'">Strong Areas</SPAN></B><SPAN style="mso-fareast-font-family: 'Times New Roman'"><o:p></o:p></SPAN></FONT></P></TD><TD style="BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; PADDING-BOTTOM: 1.5pt; PADDING-LEFT: 1.5pt; PADDING-RIGHT: 1.5pt; : #e0e0e0; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8; PADDING-TOP: 1.5pt" vAlign=top><UL =disc><LI style="MARGIN: 0in 0in 0pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l1 level1 lfo1; tab-stops: list .5in" =Ms&#111;normal><SPAN style="mso-fareast-font-family: 'Times New Roman'"><FONT face="Times New Roman">Data Handling<o:p></o:p></FONT></SPAN></LI><LI style="MARGIN: 0in 0in 0pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l1 level1 lfo1; tab-stops: list .5in" =Ms&#111;normal><SPAN style="mso-fareast-font-family: 'Times New Roman'"><FONT face="Times New Roman">Flow Control<o:p></o:p></FONT></SPAN></LI><LI style="MARGIN: 0in 0in 0pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l1 level1 lfo1; tab-stops: list .5in" =Ms&#111;normal><SPAN style="mso-fareast-font-family: 'Times New Roman'"><FONT face="Times New Roman">Functions<o:p></o:p></FONT></SPAN></LI><LI style="MARGIN: 0in 0in 0pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l1 level1 lfo1; tab-stops: list .5in" =Ms&#111;normal><SPAN style="mso-fareast-font-family: 'Times New Roman'"><FONT face="Times New Roman">Building C++ Programs<o:p></o:p></FONT></SPAN></LI><LI style="MARGIN: 0in 0in 0pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l1 level1 lfo1; tab-stops: list .5in" =Ms&#111;normal><SPAN style="mso-fareast-font-family: 'Times New Roman'"><FONT face="Times New Roman">Templates<o:p></o:p></FONT></SPAN></LI></UL></TD></TR><TR style="mso-yfti-irow: 6; mso-yfti-lastrow: yes"><TD style="BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; PADDING-BOTTOM: 1.5pt; PADDING-LEFT: 1.5pt; PADDING-RIGHT: 1.5pt; : #e0e0e0; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8; PADDING-TOP: 1.5pt" vAlign=top><P style="MARGIN: 0in 0in 0pt" =Ms&#111;normal><FONT face="Times New Roman"><B><SPAN style="mso-fareast-font-family: 'Times New Roman'">Weak Areas</SPAN></B><SPAN style="mso-fareast-font-family: 'Times New Roman'"><o:p></o:p></SPAN></FONT></P></TD><TD style="BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; PADDING-BOTTOM: 1.5pt; PADDING-LEFT: 1.5pt; PADDING-RIGHT: 1.5pt; : #e0e0e0; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8; PADDING-TOP: 1.5pt" vAlign=top><UL =disc><LI style="MARGIN: 0in 0in 0pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo2; tab-stops: list .5in" =Ms&#111;normal><SPAN style="mso-fareast-font-family: 'Times New Roman'"><FONT face="Times New Roman">None noted<o:p></o:p></FONT></SPAN></LI></UL></TD></TR></T></TABLE></TD><TD style="BORDER-BOTTOM: #ece9d8; BORDER-LEFT: #ece9d8; PADDING-BOTTOM: 1.5pt; : transparent; PADDING-LEFT: 1.5pt; PADDING-RIGHT: 1.5pt; BORDER-TOP: #ece9d8; BORDER-RIGHT: #ece9d8; PADDING-TOP: 1.5pt"></TD></TR></T></TABLE></DIV><DIV></DIV><DIV></DIV><DIV>&nbsp;</DIV><DIV>&nbsp;</DIV><DIV>try to score more :)</DIV><DIV>&nbsp;</DIV><DIV>&nbsp;</DIV><DIV>ps. I bet 100$ that&nbsp;you didn't &nbsp;try last sample.</DIV><DIV>&nbsp;</DIV><DIV>Try this. </DIV><DIV>&nbsp;</DIV><DIV>struct A<BR>{<BR>&nbsp;A() {}<BR>&nbsp;virtual ~A() {printf("Called ~A\n");}<BR>};</DIV><DIV>struct B : public A<BR>{<BR>&nbsp;B() {}<BR>&nbsp;~B() { printf("Called ~B\n");} // destructor B will be virtual even without virtual keyword<BR>};</DIV><DIV>struct C : public B<BR>{<BR>&nbsp;~C() { printf("Called ~C\n");} // destructor B will be virtual even without virtual keyword<BR>&nbsp;<BR>};</DIV><DIV>&nbsp;</DIV><DIV>int main(int argc, char* argv&#091;&#093;)<BR>{</DIV><DIV>&nbsp;B *b = new C;<BR>&nbsp;delete b; // no leak.&nbsp;no crash. </DIV><DIV>&nbsp;return 0;<BR>}</DIV><DIV>&nbsp;</DIV><DIV>&nbsp;</DIV>]]>
   </description>
   <pubDate>Tue, 14 Apr 2009 08:33:07 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=13978&amp;PID=47867&amp;title=cxtpcontrolcustom-should-be-virtual#47867</guid>
  </item> 
  <item>
   <title><![CDATA[~CXTPControlCustom() should be virtual! : Yes, of course. But...   struct...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=13978&amp;PID=47850&amp;title=cxtpcontrolcustom-should-be-virtual#47850</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=2198">znakeeye</a><br /><strong>Subject:</strong> 13978<br /><strong>Posted:</strong> 14 April 2009 at 3:46am<br /><br />Yes, of course. But...<DIV>&nbsp;</DIV><DIV>&nbsp;</DIV><DIV>struct C : public B</DIV><DIV>{</DIV><DIV>&nbsp;</DIV><DIV>};</DIV><DIV>&nbsp;</DIV><DIV>B *b = new C;</DIV><DIV>delete b; // leak or crash</DIV><DIV>&nbsp;</DIV><DIV>Public destructors should always be declared virtual, period. <img src="http://forum.codejock.com/smileys/smiley17.gif" border="0"></DIV>]]>
   </description>
   <pubDate>Tue, 14 Apr 2009 03:46:36 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=13978&amp;PID=47850&amp;title=cxtpcontrolcustom-should-be-virtual#47850</guid>
  </item> 
  <item>
   <title><![CDATA[~CXTPControlCustom() should be virtual! : Try this sample    struct A { ...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=13978&amp;PID=47838&amp;title=cxtpcontrolcustom-should-be-virtual#47838</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=6851">Oleg</a><br /><strong>Subject:</strong> 13978<br /><strong>Posted:</strong> 14 April 2009 at 12:43am<br /><br />Try this sample <DIV>&nbsp;</DIV><DIV><DIV>struct A</DIV><DIV>{</DIV><DIV>&nbsp;&nbsp;&nbsp;&nbsp; A() {}</DIV><DIV>&nbsp;&nbsp;&nbsp;&nbsp; virtual ~A() {}</DIV><DIV>};</DIV><DIV>&nbsp;</DIV><DIV><DIV>struct B : public A</DIV><DIV>{</DIV><DIV>&nbsp;&nbsp;&nbsp;&nbsp; B() {}</DIV><DIV>&nbsp;&nbsp;&nbsp;&nbsp; ~B() {} // destructor B will be virtual even without virtual keyword</DIV><DIV>};</DIV><DIV>&nbsp;</DIV><DIV>A *a = new B;</DIV><DIV>delete a;</DIV><DIV>&nbsp;</DIV><DIV>Trust me, I now what is "virtual" keyword and how it used&nbsp; :)</DIV><DIV>&nbsp;</DIV><DIV>&nbsp;</DIV><DIV>p.s. See 10.3.1 of ANSI C++ International Standard </DIV></DIV></DIV>]]>
   </description>
   <pubDate>Tue, 14 Apr 2009 00:43:36 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=13978&amp;PID=47838&amp;title=cxtpcontrolcustom-should-be-virtual#47838</guid>
  </item> 
  <item>
   <title><![CDATA[~CXTPControlCustom() should be virtual! : That depends on how you use it....]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=13978&amp;PID=47824&amp;title=cxtpcontrolcustom-should-be-virtual#47824</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=2198">znakeeye</a><br /><strong>Subject:</strong> 13978<br /><strong>Posted:</strong> 13 April 2009 at 2:55pm<br /><br />That depends on how you use it. The code is dangerous. Try this sample:<DIV>&nbsp;</DIV><DIV>struct A</DIV><DIV>{</DIV><DIV>&nbsp;&nbsp;&nbsp;&nbsp; A() {}</DIV><DIV>&nbsp;&nbsp;&nbsp;&nbsp; ~A() {}</DIV><DIV>};</DIV><DIV>&nbsp;</DIV><DIV><DIV>struct B : public A</DIV><DIV>{</DIV><DIV>&nbsp;&nbsp;&nbsp;&nbsp; B() {}</DIV><DIV>&nbsp;&nbsp;&nbsp;&nbsp; virtual ~B() {} // Correctly written, derived class.</DIV><DIV>};</DIV><DIV>&nbsp;</DIV><DIV>A *a = new B;</DIV><DIV>delete a; &lt;--- crash!</DIV><DIV>&nbsp;</DIV><DIV>Trust me, the "virtual" keyword is extremely important!</DIV></DIV>]]>
   </description>
   <pubDate>Mon, 13 Apr 2009 14:55:51 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=13978&amp;PID=47824&amp;title=cxtpcontrolcustom-should-be-virtual#47824</guid>
  </item> 
  <item>
   <title><![CDATA[~CXTPControlCustom() should be virtual! : Hi,  If there is no &amp;#034;virtual&amp;#034;...]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=13978&amp;PID=47777&amp;title=cxtpcontrolcustom-should-be-virtual#47777</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=6851">Oleg</a><br /><strong>Subject:</strong> 13978<br /><strong>Posted:</strong> 10 April 2009 at 3:59pm<br /><br />Hi,<DIV>&nbsp;</DIV><DIV>If there is no "virtual" keyword it doesn't mean its not virtual&nbsp; ;-)</DIV><DIV>&nbsp;</DIV><DIV>ps. Don't worry, its virtual.</DIV>]]>
   </description>
   <pubDate>Fri, 10 Apr 2009 15:59:36 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=13978&amp;PID=47777&amp;title=cxtpcontrolcustom-should-be-virtual#47777</guid>
  </item> 
  <item>
   <title><![CDATA[~CXTPControlCustom() should be virtual! : Quite important actually. ]]></title>
   <link>http://forum.codejock.com/forum_posts.asp?TID=13978&amp;PID=47775&amp;title=cxtpcontrolcustom-should-be-virtual#47775</link>
   <description>
    <![CDATA[<strong>Author:</strong> <a href="http://forum.codejock.com/member_profile.asp?PF=2198">znakeeye</a><br /><strong>Subject:</strong> 13978<br /><strong>Posted:</strong> 10 April 2009 at 2:35pm<br /><br />Quite important actually.]]>
   </description>
   <pubDate>Fri, 10 Apr 2009 14:35:53 +0000</pubDate>
   <guid isPermaLink="true">http://forum.codejock.com/forum_posts.asp?TID=13978&amp;PID=47775&amp;title=cxtpcontrolcustom-should-be-virtual#47775</guid>
  </item> 
 </channel>
</rss>