<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><title>Geekswithblogs.net</title><link>http://geekswithblogs.net/mainfeed.aspx</link><description>Geekswithblogs.net</description><generator>Subtext Version 0.0.0.0</generator><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/geekswithblogs" /><feedburner:info uri="geekswithblogs" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item><title>Accessing QuickBooks Data for Use in LightSwitch</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/QR1GYLEQ3-8/accessing-quickbooks-data-for-use-in-lightswitch.aspx</link><pubDate>Sat, 04 Feb 2012 23:05:38 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/GGBlogger/archive/2012/02/04/accessing-quickbooks-data-for-use-in-lightswitch.aspx</guid><wfw:comment>http://geekswithblogs.net/GGBlogger/comments/148595.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/GGBlogger/comments/commentRss/148595.aspx</wfw:commentRss><comments>http://geekswithblogs.net/GGBlogger/archive/2012/02/04/accessing-quickbooks-data-for-use-in-lightswitch.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/GGBlogger/services/trackbacks/148595.aspx</trackback:ping><source url="http://geekswithblogs.net/GGBlogger/rss.aspx">Accessing QuickBooks Data for Use in LightSwitch</source><description>&lt;h3&gt;Intuit Partner Platform and Data Access&lt;/h3&gt;  &lt;p&gt;I’m going to make some assumptions that will cover a lot of folks developing applications to work with QuickBooks.&lt;/p&gt;  &lt;p&gt;1. You are running a copy of QuickBooks on your development machine.&lt;/p&gt;  &lt;p&gt;2. You are running Visual Studio 2010 as your development environment of choice.&lt;/p&gt;  &lt;p&gt;3. You have some flavor of Microsoft LightSwitch installed.&lt;/p&gt;  &lt;p&gt;4. You want to access QuickBooks data on your machine to USE LightSwitch.&lt;/p&gt;  &lt;p&gt;Well now you have an option. Head on over to &lt;a href="http://www.rssbus.com"&gt;http://www.rssbus.com&lt;/a&gt; and pick up a copy of their QuickBooks Data Provider for ADO.NET. A one developer license with royalty-free distribution will cost you $599 at the present time and in the next few minutes I’m going to help you get started using this package.&lt;/p&gt;  &lt;p&gt;Although this software comes with a number of samples getting started was not all that intuitive for me. After a number of false starts I did a GoToMeeting with a gentleman named Casey and he showed me how to get started. The problem is that this package can serve in a number of capacities accessing QuickBooks data whether the data is local or remote so to get you started I am going to show you how to set things up locally to allow you to run QuickBooks Data Provider to use the samples supplied and to use LightSwitch to access the data. If you have a need for other setups you will need to consult their help files.&lt;/p&gt;  &lt;p&gt;Let’s start with the QuickBooks Remote Connector provided as part of the package. You won’t find it in your menu choices in the start menu but if you cruise on down to c:\program files (x86)\RSSBus\RSSBus QuickBooks Data Provider\RemoteConnector you will find RemoteConnector.exe. I chose to pin it to my taskbar but you could also make it a desktop icon. This connector is a mini http listener and it’s easy to get multiple instances running and we don’t want that. I’ll have more on that in a bit.&lt;/p&gt;  &lt;p&gt;When you start it you will get this:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/GGBlogger/Windows-Live-Writer/7d087ea54f90_D3B2/clip_image001_2.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image001" border="0" alt="clip_image001" src="http://geekswithblogs.net/images/geekswithblogs_net/GGBlogger/Windows-Live-Writer/7d087ea54f90_D3B2/clip_image001_thumb.png" width="244" height="147" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The most important thing to note is that we’re using port 2080. Now click the Users tab:&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/GGBlogger/Windows-Live-Writer/7d087ea54f90_D3B2/clip_image002_2.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image002" border="0" alt="clip_image002" src="http://geekswithblogs.net/images/geekswithblogs_net/GGBlogger/Windows-Live-Writer/7d087ea54f90_D3B2/clip_image002_thumb.png" width="244" height="147" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Fill in a user name and password. This is strictly for the use of the data connector and has no other purpose. To find the company file you want to use click the browse button and you will get:&lt;/p&gt;  &lt;p&gt;(Word of warning – clicking the Red X button at the upper right of the screen DOES NOT close the connector. To CLOSE the connector use the Exit button on the menu strip!!!!!)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/GGBlogger/Windows-Live-Writer/7d087ea54f90_D3B2/clip_image004_2.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image004" border="0" alt="clip_image004" src="http://geekswithblogs.net/images/geekswithblogs_net/GGBlogger/Windows-Live-Writer/7d087ea54f90_D3B2/clip_image004_thumb.jpg" width="244" height="140" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Choose the file you want to access and click the start button. This starts the connector in listening mode. EVERY time you run this it will generate a new connection. You can see these in the hidden files section.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/GGBlogger/Windows-Live-Writer/7d087ea54f90_D3B2/clip_image005_2.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image005" border="0" alt="clip_image005" src="http://geekswithblogs.net/images/geekswithblogs_net/GGBlogger/Windows-Live-Writer/7d087ea54f90_D3B2/clip_image005_thumb.png" width="198" height="205" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;You only want ONE of these running at any given time. With one connector started and running you’re ready to move on to using the connection to access QB data.&lt;/p&gt;  &lt;h3&gt;So let’s access some data&lt;/h3&gt;  &lt;p&gt;My suggestion is to start the sample account application provided by RSS. The demos are installed as links when you install the Data Connector but you can also find them in Program Files (x86) under RSSBus. The form for the account application looks like this.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/GGBlogger/Windows-Live-Writer/7d087ea54f90_D3B2/clip_image006_2.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image006" border="0" alt="clip_image006" src="http://geekswithblogs.net/images/geekswithblogs_net/GGBlogger/Windows-Live-Writer/7d087ea54f90_D3B2/clip_image006_thumb.png" width="244" height="220" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Fill in the details using &lt;a href="http://localhost:2080"&gt;http://localhost:2080&lt;/a&gt; and your user name and password that you used in the connector dialog:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/GGBlogger/Windows-Live-Writer/7d087ea54f90_D3B2/clip_image007_2.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image007" border="0" alt="clip_image007" src="http://geekswithblogs.net/images/geekswithblogs_net/GGBlogger/Windows-Live-Writer/7d087ea54f90_D3B2/clip_image007_thumb.png" width="244" height="220" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Before you go further open QuickBooks with the data you selected to use with the connector. With QuickBooks running click the Refresh button. QuickBooks should present you with the following screen:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/GGBlogger/Windows-Live-Writer/7d087ea54f90_D3B2/clip_image008_2.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image008" border="0" alt="clip_image008" src="http://geekswithblogs.net/images/geekswithblogs_net/GGBlogger/Windows-Live-Writer/7d087ea54f90_D3B2/clip_image008_thumb.png" width="244" height="232" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;You have a number of options here but I chose Yes, always and allowed it o access personal data for my testing purposes. Click Continue… to get:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/GGBlogger/Windows-Live-Writer/7d087ea54f90_D3B2/clip_image009_2.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image009" border="0" alt="clip_image009" src="http://geekswithblogs.net/images/geekswithblogs_net/GGBlogger/Windows-Live-Writer/7d087ea54f90_D3B2/clip_image009_thumb.png" width="244" height="151" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;First warning – select Yes unless you want to change it then a final warning:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/GGBlogger/Windows-Live-Writer/7d087ea54f90_D3B2/clip_image010_2.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image010" border="0" alt="clip_image010" src="http://geekswithblogs.net/images/geekswithblogs_net/GGBlogger/Windows-Live-Writer/7d087ea54f90_D3B2/clip_image010_thumb.png" width="244" height="184" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Click done and you can close QuickBooks if you like. Now click the refresh button on the account application and you should get this:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/GGBlogger/Windows-Live-Writer/7d087ea54f90_D3B2/clip_image011_2.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="clip_image011" border="0" alt="clip_image011" src="http://geekswithblogs.net/images/geekswithblogs_net/GGBlogger/Windows-Live-Writer/7d087ea54f90_D3B2/clip_image011_thumb.png" width="244" height="220" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;You’re now accessing QuickBooks data from an application external to QuickBooks. I know it seems like a lot of work but if you follow the instructions above things should go smoothly. I ended up with about a dozen Remote Connectors running on some of my first attempts. It took Casey and a GoToMeeting session to get me sorted out. Now I love it LOL. I’ll do more with LightSwitch in another blog.&lt;/p&gt;  &lt;p&gt;Bud Aaron – the Geriatric Geek&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.dotnetchecks.com"&gt;http://www.dotnetchecks.com&lt;/a&gt;&lt;/p&gt; &lt;img src="http://geekswithblogs.net/GGBlogger/aggbug/148595.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/QR1GYLEQ3-8" height="1" width="1"/&gt;</description><dc:creator>GGBlogger</dc:creator><feedburner:origLink>http://geekswithblogs.net/GGBlogger/archive/2012/02/04/accessing-quickbooks-data-for-use-in-lightswitch.aspx</feedburner:origLink></item><item><title>Dice.com IT jobs search results Feb. 2012</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/c5Fq5jF6I84/dice.com-it-jobs-search-results-feb.-2012.aspx</link><pubDate>Sat, 04 Feb 2012 23:03:10 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/TomStickel/archive/2012/02/04/dice.com-it-jobs-search-results-feb.-2012.aspx</guid><wfw:comment>http://geekswithblogs.net/TomStickel/comments/148594.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/TomStickel/comments/commentRss/148594.aspx</wfw:commentRss><comments>http://geekswithblogs.net/TomStickel/archive/2012/02/04/dice.com-it-jobs-search-results-feb.-2012.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/TomStickel/services/trackbacks/148594.aspx</trackback:ping><source url="http://geekswithblogs.net/TomStickel/rss.aspx">Dice.com IT jobs search results Feb. 2012</source><description>Nationwide search on dice.com&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Feb. 4, 2012&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;C# - 8,518&lt;/div&gt;&lt;div&gt;ASP.NET  4,957&lt;/div&gt;&lt;div&gt;.NET MVC 1,101&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Biztalk  409&lt;/div&gt;&lt;div&gt;Microsoft Dynamics CRM   461&lt;/div&gt;&lt;div&gt;Sharepoint 4,022&lt;/div&gt;&lt;div&gt;SQL Server 14,390&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Java  16,854&lt;/div&gt;&lt;div&gt;groovy  292&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Oracle 18,118&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt; &lt;img src="http://geekswithblogs.net/TomStickel/aggbug/148594.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/c5Fq5jF6I84" height="1" width="1"/&gt;</description><dc:creator>TomStickel</dc:creator><feedburner:origLink>http://geekswithblogs.net/TomStickel/archive/2012/02/04/dice.com-it-jobs-search-results-feb.-2012.aspx</feedburner:origLink></item><item><title>Monster.com IT job search results from March 2010</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/jUCJ7arcOts/monster.com-it-job-search-results-from-march-2010.aspx</link><pubDate>Sat, 04 Feb 2012 22:53:25 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/TomStickel/archive/2012/02/04/monster.com-it-job-search-results-from-march-2010.aspx</guid><wfw:comment>http://geekswithblogs.net/TomStickel/comments/148593.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/TomStickel/comments/commentRss/148593.aspx</wfw:commentRss><comments>http://geekswithblogs.net/TomStickel/archive/2012/02/04/monster.com-it-job-search-results-from-march-2010.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/TomStickel/services/trackbacks/148593.aspx</trackback:ping><source url="http://geekswithblogs.net/TomStickel/rss.aspx">Monster.com IT job search results from March 2010</source><description>&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Monster.com&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Nationwide search&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Job Title: Empty   ; Skills/keyword: mvc   location: empty&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Results: 523 jobs nationwide (mostly java )&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Change to  Skills/keyword  ASP.NET MVC&lt;/div&gt;&lt;div&gt;Results:  80 jobs nationwide&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;.net mvc  =  129&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;groovy = 66 jobs&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;grails = 44 jobs&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;C#    3,481&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;VB.NET  855&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;.NET  &amp;gt;5,000&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;ASP.NET  2,245&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Java  &amp;gt; 5,000&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Delphi = 93&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;VB = 2,559&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Visual Basic  2,604&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;ORM - 150&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Hibernate  - 851&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;NHibernate -  53&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Linq  = 162&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Entity Framework = 97&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;fxcop = 5 jobs&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Oracle = &amp;gt;5,000&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;SQL Server = 4,148&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;mysql = 1,431&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;db2  = 699&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Nunit  = 120&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;JUnit = 422&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Selenium = 142&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Coldfusion = 304&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Perl = 2,371&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;PHP = 1,540&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Python = 1,029&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Ruby on Rails = 221&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Automation Engineer = 297&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Spring = 1,710&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Subverion = 559&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;VSS = 83&lt;/div&gt;&lt;div&gt;Visual Source Safe = 120&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;CVS = 824&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;StarTeam = 14&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;vmware = 1,326&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Virtualbox = 3&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;C++  = 4,266&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt; &lt;img src="http://geekswithblogs.net/TomStickel/aggbug/148593.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/jUCJ7arcOts" height="1" width="1"/&gt;</description><dc:creator>TomStickel</dc:creator><feedburner:origLink>http://geekswithblogs.net/TomStickel/archive/2012/02/04/monster.com-it-job-search-results-from-march-2010.aspx</feedburner:origLink></item><item><title>Coming Back in action!!!</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/Q9S_lPIrcQA/148592.aspx</link><pubDate>Sat, 04 Feb 2012 22:08:09 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/jith/archive/2012/02/04/148592.aspx</guid><wfw:comment>http://geekswithblogs.net/jith/comments/148592.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/jith/comments/commentRss/148592.aspx</wfw:commentRss><comments>http://geekswithblogs.net/jith/archive/2012/02/04/148592.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/jith/services/trackbacks/148592.aspx</trackback:ping><source url="http://geekswithblogs.net/jith/rss.aspx">Coming Back in action!!!</source><description>It's been exactly over three years and two months since I last logged in to this blog. The last post which I made on Dec 2008, was itself after a one year gap :). Well, now let me try if I can continue this activity. Lot of learning, lot of new cool stuffs. Technology itself has been changed quite dramatically over this period with the addition of new cool stuffs and I believe my English as well improved a little bit :).  Microsoft developers finally started realizing the drawbacks of ASP.NET architecture and started drifting towards more web world friendly architecture like ASP.NET MVC. Thanks to the huge fan base of Ruby On Rails.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In this context to start off this new beginning I will quote some interesting remark I found from the Mr.Asp.Net Scott Guthrie. Who is better than him to quote when I want to discuss about MVC?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;"Some guidance I occasionally give people on my team when working and communicating with others:&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1.You will rarely win a debate with someone by telling them that they are stupid - no matter how well intention ed or eloquent your explanation of their IQ problems might be.&lt;/div&gt;&lt;div&gt;2.There will always be someone somewhere in the world who is smarter than you - don’t always assume that they aren’t in the room with you.&lt;/div&gt;&lt;div&gt;3. People you interact with too often forget the praise you give them, and too often remember a past insult - so be judicious in handing them out as they come back to haunt you later. &lt;/div&gt;&lt;div&gt;4. People can and do change their minds - be open to being persuaded in a debate, and neither gloat nor hold it against someone else if they also change their minds. "&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Great points!!!  Very true as well.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt; &lt;img src="http://geekswithblogs.net/jith/aggbug/148592.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/Q9S_lPIrcQA" height="1" width="1"/&gt;</description><dc:creator>Srijith Sarman</dc:creator><feedburner:origLink>http://geekswithblogs.net/jith/archive/2012/02/04/148592.aspx</feedburner:origLink></item><item><title>LINQ Query and Lambda Expressions</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/O4NAtt6kS_8/linq-query-and-lambda-expressions.aspx</link><pubDate>Sat, 04 Feb 2012 21:11:22 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/TomStickel/archive/2012/02/04/linq-query-and-lambda-expressions.aspx</guid><wfw:comment>http://geekswithblogs.net/TomStickel/comments/148591.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/TomStickel/comments/commentRss/148591.aspx</wfw:commentRss><comments>http://geekswithblogs.net/TomStickel/archive/2012/02/04/linq-query-and-lambda-expressions.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/TomStickel/services/trackbacks/148591.aspx</trackback:ping><source url="http://geekswithblogs.net/TomStickel/rss.aspx">LINQ Query and Lambda Expressions</source><description>&lt;br /&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/bb397687.aspx" target="_blank"&gt;Lambda expressions&lt;/a&gt; are a powerful tool to writing quick, concise code. They can be used in numerous situations, most notably in conjuction with LINQ statements.&lt;div&gt;&lt;br /&gt;A lambda expression is an anonymous function that can contain expressions and statements, and can be used to create delegates or expression tree types.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;All lambda expressions use the lambda operator =&amp;gt;, which is read as “goes to”. The left side of the lambda operator specifies the input parameters (if any) and the right side holds the expression or statement block. The lambda expression x =&amp;gt; y * z is read “x goes to y times z.”&lt;/div&gt;&lt;div&gt;&lt;br /&gt;Here’s how a typical LINQ query looks like without using lambda expressions:&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;b&gt;var query = from m in db.PersonalMessages&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;where m.ConversationID_FK == ConversationID&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;select m;&lt;/b&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;Okay, not bad. It looks like a SQL query in reverse (i.e. you start off with “from” and end with “select”). This is so that intellisense can help you out—if you started with select, it would have on idea where you were going with the query.&lt;br /&gt;we are selecting PersonalMessages where the ConversationID is equal to some value passed into the method. The query itself is kinda verbose, and I like to keep my code short and sweet, so how do I re-write this using lambda expressions? Here is the code, and then we’ll break it down:&lt;/div&gt;&lt;div&gt;&lt;blockquote&gt;&lt;b&gt;var query = db.PersonalMessages&lt;br /&gt;.Where(m =&amp;gt; m.ConversationID_FK == ConversationID);&lt;/b&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;We got rid of “select’”, “from” and “in”, etc. Cleaned it up quite a bit. What all is happening though? Basically it’s written out like:&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;My Query = Get Personal Messages from my data context Where the ConversationID is equal to this #.&lt;/blockquote&gt;&lt;blockquote&gt;&lt;br /&gt;In other words, it reads exactly like it does in the first written out query, but it’s done faster. The where statement is like a mini-method. You’re defining some variable M (you can use any letter, I always use m for the sake of convention in my code) and then in this case you’re giving m some condition to work with.&lt;br /&gt;You’re basically saying, define m real quick (m=&amp;gt;) as a stand-in for PersonalMessage. Then only return PersonalMessages where m’s ConversationID is equal to some value. &lt;/blockquote&gt;&lt;/div&gt;&lt;div&gt;&lt;blockquote&gt;&lt;blockquote&gt;&lt;blockquote&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;/div&gt; &lt;img src="http://geekswithblogs.net/TomStickel/aggbug/148591.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/O4NAtt6kS_8" height="1" width="1"/&gt;</description><dc:creator>TomStickel</dc:creator><feedburner:origLink>http://geekswithblogs.net/TomStickel/archive/2012/02/04/linq-query-and-lambda-expressions.aspx</feedburner:origLink></item><item><title>This is why I shouldn&amp;rsquo;t blog before a cup of coffee&amp;hellip;.</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/8X5YZrOgMgg/148590.aspx</link><pubDate>Sat, 04 Feb 2012 16:19:11 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/clingermangw/archive/2012/02/04/148590.aspx</guid><wfw:comment>http://geekswithblogs.net/clingermangw/comments/148590.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/clingermangw/comments/commentRss/148590.aspx</wfw:commentRss><comments>http://geekswithblogs.net/clingermangw/archive/2012/02/04/148590.aspx#comment</comments><slash:comments>1</slash:comments><trackback:ping>http://geekswithblogs.net/clingermangw/services/trackbacks/148590.aspx</trackback:ping><source url="http://geekswithblogs.net/clingermangw/rss.aspx">This is why I shouldn&amp;rsquo;t blog before a cup of coffee&amp;hellip;.</source><description>&lt;p&gt; &lt;/p&gt;  &lt;p align="center"&gt;Wake up in the morning feeling all C Sharpy    &lt;br /&gt;Grab my laptop by my bed, I'm going to code this pretty    &lt;br /&gt;Brush my teeth and my hair much later I'm sure    &lt;br /&gt;Cause when I'm coding an idea I ain't looking to score &lt;/p&gt;  &lt;p align="center"&gt;I'm talking curly braces have to close, close  &lt;br /&gt;Writing comments all in prose, prose.     &lt;br /&gt;Errors blowing up my codes, codes &lt;/p&gt;  &lt;p align="center"&gt;Music popping, coding my favorite ideas   &lt;br /&gt;Pulling up, reading the tweets    &lt;br /&gt;Starting to get a little bit Lispy&lt;/p&gt;  &lt;p align="center"&gt;No slop, make it top    &lt;br /&gt;Coding, blow that keyboard up    &lt;br /&gt;Today I'm going write    &lt;br /&gt;Till I see no sunlight     &lt;br /&gt;Fric, frack, errors back     &lt;br /&gt;But the coding just won’t stop no &lt;/p&gt;  &lt;p align="center"&gt;Coad-oh oh oh    &lt;br /&gt;Coad-oh oh oh&lt;/p&gt; &lt;img src="http://geekswithblogs.net/clingermangw/aggbug/148590.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/8X5YZrOgMgg" height="1" width="1"/&gt;</description><dc:creator>George Clingerman</dc:creator><feedburner:origLink>http://geekswithblogs.net/clingermangw/archive/2012/02/04/148590.aspx</feedburner:origLink></item><item><title>Patches issued for PCAnywhere</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/ZIA3KLXSqkQ/patches-issued-for-pcanywhere.aspx</link><pubDate>Sat, 04 Feb 2012 15:30:26 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/TATWORTH/archive/2012/02/04/patches-issued-for-pcanywhere.aspx</guid><wfw:comment>http://geekswithblogs.net/TATWORTH/comments/148589.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/TATWORTH/comments/commentRss/148589.aspx</wfw:commentRss><comments>http://geekswithblogs.net/TATWORTH/archive/2012/02/04/patches-issued-for-pcanywhere.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/TATWORTH/services/trackbacks/148589.aspx</trackback:ping><source url="http://geekswithblogs.net/TATWORTH/rss.aspx">Patches issued for PCAnywhere</source><description>Patches have been issued for PC Anywhere. Please see:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.symantec.com/security_response/securityupdates/detail.jsp?fid=security_advisory&amp;amp;pvid=security_advisory&amp;amp;year=2012&amp;amp;suid=20120124_00"&gt;http://www.symantec.com/security_response/securityupdates/detail.jsp?fid=security_advisory&amp;amp;pvid=security_advisory&amp;amp;year=2012&amp;amp;suid=20120124_00&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.informationweek.com/news/security/app-security/232600043"&gt;http://www.informationweek.com/news/security/app-security/232600043&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.theregister.co.uk/2012/02/02/pcanywhere_source_code_leak_sheanigans/"&gt;http://www.theregister.co.uk/2012/02/02/pcanywhere_source_code_leak_sheanigans/&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt; &lt;img src="http://geekswithblogs.net/TATWORTH/aggbug/148589.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/ZIA3KLXSqkQ" height="1" width="1"/&gt;</description><dc:creator>TATWORTH</dc:creator><feedburner:origLink>http://geekswithblogs.net/TATWORTH/archive/2012/02/04/patches-issued-for-pcanywhere.aspx</feedburner:origLink></item><item><title>Former Apple iPhone engineer Bob Borchers</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/JLig0NbsX04/148588.aspx</link><pubDate>Sat, 04 Feb 2012 10:14:25 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/kit/archive/2012/02/03/148588.aspx</guid><wfw:comment>http://geekswithblogs.net/kit/comments/148588.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/kit/comments/commentRss/148588.aspx</wfw:commentRss><comments>http://geekswithblogs.net/kit/archive/2012/02/03/148588.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/kit/services/trackbacks/148588.aspx</trackback:ping><source url="http://geekswithblogs.net/kit/rss.aspx">Former Apple iPhone engineer Bob Borchers</source><description>&lt;p&gt;&lt;a title="Bob Borchers" href="http://www.opuscapitalventures.com/team/general-partners/bob-borchers/"&gt;Bob Borchers&lt;/a&gt; revealed that the reason a lot of iPhone adverts show the time as 9:42 am on the iPhone was because the iPhone was originally launched at that time.&lt;/p&gt;&lt;p&gt;For one of the commercial for the original iPhone, Borchers said the phone number used to demo the Google Map function was genuine and is the actual number number of the Pacific Catch Restaurant in San Franscisco and the last time he was there they still had the iPhone special, which is calamari.&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.macnn.com/articles/12/02/02/talk.to.students.emphasizes.innovation/"&gt;http://www.macnn.com/articles/12/02/02/talk.to.students.emphasizes.innovation/&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;&lt;img src="http://i78.photobucket.com/albums/j95/kit_ong/iPhone/pacificcatch.jpg" /&gt;&lt;/font&gt;&lt;/u&gt;&lt;/p&gt;&lt;p&gt;&lt;img src="http://i78.photobucket.com/albums/j95/kit_ong/iPhone/pacificcatchmap.jpg" /&gt;&lt;/p&gt;&lt;p&gt;&lt;img src="http://i78.photobucket.com/albums/j95/kit_ong/iPhone/09-42am.png" /&gt;&lt;/p&gt;&lt;p&gt;&lt;img src="http://i78.photobucket.com/albums/j95/kit_ong/iPhone/9-42amiPhoneannouncement.jpg" width="684" height="875" /&gt;&lt;/p&gt; &lt;img src="http://geekswithblogs.net/kit/aggbug/148588.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/JLig0NbsX04" height="1" width="1"/&gt;</description><dc:creator>Kit Ong</dc:creator><feedburner:origLink>http://geekswithblogs.net/kit/archive/2012/02/03/148588.aspx</feedburner:origLink></item><item><title>Organization &amp;amp; Architecture UNISA Studies &amp;ndash; Chap 2</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/PzMRdo_Po8Q/organization-amp-architecture-unisa-studies-ndash-chap-2.aspx</link><pubDate>Sat, 04 Feb 2012 09:59:47 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/MarkPearl/archive/2012/02/04/organization-amp-architecture-unisa-studies-ndash-chap-2.aspx</guid><wfw:comment>http://geekswithblogs.net/MarkPearl/comments/148587.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/MarkPearl/comments/commentRss/148587.aspx</wfw:commentRss><comments>http://geekswithblogs.net/MarkPearl/archive/2012/02/04/organization-amp-architecture-unisa-studies-ndash-chap-2.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/MarkPearl/services/trackbacks/148587.aspx</trackback:ping><source url="http://geekswithblogs.net/MarkPearl/rss.aspx">Organization &amp;amp; Architecture UNISA Studies &amp;ndash; Chap 2</source><description>&lt;p&gt; &lt;/p&gt;  &lt;h3&gt;Designing for Performance&lt;/h3&gt;  &lt;p&gt;The basic building blocks for todays computers are virtually the same as those of the early IAS computers. The focus has been on optimizing and increasing speeds while keeping the same architecture.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;Processors&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Increasing speed with processors uses several techniques including…&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Branch prediction – a processor looks ahead in the instruction code fetched from memory and predicts which branches or groups of instructions are likely to be processed next.&lt;/li&gt;    &lt;li&gt;Data flow analysis – the processor analyses which instructions are dependent on each others results or data to create an optimized schedule of instructions preventing unnecessary delay&lt;/li&gt;    &lt;li&gt;Speculative execution – Using branch prediction and data flow analysis some processors speculatively execute instructions ahead of their actual appearance in the program execution saving the results in a temporary location&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;Performance Balance&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;While processor power has increased over the years, other critical components have not kept up. The result is a need to look for ways of balancing the performance. One of the main bottlenecks has been the interface between processor and main memory.&lt;/p&gt;  &lt;p&gt;There are a number of ways that a system architect can address this problem including the following…&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Increase the number of bits that are retrieved at one time by making DRAMs wider rather than deeper and using wide bus data paths&lt;/li&gt;    &lt;li&gt;Change the DRAM interface to make it more efficient by including a cache or other buffering scheme on the DRAM chip&lt;/li&gt;    &lt;li&gt;Reduce the frequency of memory access by incorporating increasingly complex and efficient cache structures between the processor and main memory including the incorporation of one or more caches on the processor as well as on an off chip cache close to the processor chip&lt;/li&gt;    &lt;li&gt;Increase the interconnect bandwidth between processors and memory by using higher speed buses and by using a hierarchy of buses to buffer and structure data flow.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Another are of design focus is the handling of I/O devices. The main challenge is getting the data from these devices moved between processor and peripheral. Strategies include buffering and cache techniques. The use of multiple processor configurations can aid in satisfying I/O demands as well.&lt;/p&gt;  &lt;p&gt;There are generally two constantly evolving factors&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;The rate at which performance is changing in the various technology areas differs greatly from one type of element to another&lt;/li&gt;    &lt;li&gt;New applications and new peripheral devices constantly change the nature of the demand on the system in terms of typical instruction profile and the data access patterns&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;Improvements in Chip Organization and Architecture&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;There are 3 approaches to achieving increased processor speed…&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Increase the hardware speed of the processor (i.e. shrinking the size of the logic gates on the processor chip which would increase the individual operations executed on the chip)&lt;/li&gt;    &lt;li&gt;Increase the size and speed of caches that are interposed between the processor and main memory.&lt;/li&gt;    &lt;li&gt;Make changes to the processor organization and architecture that increase the effective speed od instruction execution (normally via parallelism)&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;As clock speeds and logic density increase, a number of obstacles become more significant including…&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;Power &lt;/strong&gt;– the power density increases with an increase in logic density and clock speed. One challenge of this is the difficulty of dissipating the heat generated on high-density, high-speed chips&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;RC delay &lt;/strong&gt;– The speed at which electrons can flow on a chip between transistors is limited by the resistance and capacitance of the metal wires connecting them. delay increases as the RC product increases. As components on the chip decrease in size, the wires are closer together, increasing capacitance&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Memory latency – &lt;/strong&gt;Memory speeds lag processor speeds as previously discussed&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;With these challenges becoming harder to reduce, designers of chips are now resorting to placing multiple processors on the same chip, with a large shared cache. Multicore processors provide the potential to increase performance without increasing the clock rate. Thus the current strategy is to rather use two simpler processors instead of one more complicated processor.&lt;/p&gt;  &lt;h3&gt;The Evolutions of the Intel x86 Architecture&lt;/h3&gt;  &lt;p&gt;There are two main architectures that we will examine – &lt;strong&gt;Intel x86&lt;/strong&gt; and &lt;strong&gt;ARM&lt;/strong&gt; processors&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;CISC Design &lt;/strong&gt;- The Intel x86 is an excellent example of CISC design (Complex Instruction Set Computers). &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;RISK Design &lt;/strong&gt;- The ARM architecture is used in a wide variety of devices and embedded systems and is a good example of RISC design (Reduced instruction set).&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Some of the main differences between the Pentium, Pentium Pro, Pentium II, Pentium III, Pentium 4, the Core (Duo) and the Core 2&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Pentium – introduced the use of superscalar techniques, which allow multiple instructions to execute in parallel&lt;/li&gt;    &lt;li&gt;Pentium Pro – Made aggressive use of register renaming, branch prediction, data flow analysis and speculative execution&lt;/li&gt;    &lt;li&gt;Pentium II – Used Intel MMX technology which is designed to specifically process video, audio, and graphics data efficiently&lt;/li&gt;    &lt;li&gt;Pentium III – Incorporates additional floating-point instructions to support 3D graphics software&lt;/li&gt;    &lt;li&gt;Pentium 4 – Includes additional floating point and other enhancements for multimedia&lt;/li&gt;    &lt;li&gt;Core – First microprocessor with a dual core, i.e. two processors on a single chip&lt;/li&gt;    &lt;li&gt;Core 2 – Extends the architecture to 64 bits&lt;/li&gt; &lt;/ul&gt; &lt;img src="http://geekswithblogs.net/MarkPearl/aggbug/148587.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/PzMRdo_Po8Q" height="1" width="1"/&gt;</description><dc:creator>MarkPearl</dc:creator><feedburner:origLink>http://geekswithblogs.net/MarkPearl/archive/2012/02/04/organization-amp-architecture-unisa-studies-ndash-chap-2.aspx</feedburner:origLink></item><item><title>Invitation to the IASA SE Florida Chapter Meeting on 02/21/2012</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/eB0c2Bh0K8k/invitation-to-the-iasa-se-florida-chapter-meeting-on-02212012.aspx</link><pubDate>Sat, 04 Feb 2012 03:28:26 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/Rainer/archive/2012/02/03/invitation-to-the-iasa-se-florida-chapter-meeting-on-02212012.aspx</guid><wfw:comment>http://geekswithblogs.net/Rainer/comments/148586.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/Rainer/comments/commentRss/148586.aspx</wfw:commentRss><comments>http://geekswithblogs.net/Rainer/archive/2012/02/03/invitation-to-the-iasa-se-florida-chapter-meeting-on-02212012.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/Rainer/services/trackbacks/148586.aspx</trackback:ping><source url="http://geekswithblogs.net/Rainer/rss.aspx">Invitation to the IASA SE Florida Chapter Meeting on 02/21/2012</source><description>&lt;p align="center"&gt; &lt;strong&gt;IASA SE Florida Chapter&lt;/strong&gt;&lt;/p&gt;&lt;p align="center"&gt;&lt;font color="#0000ff" size="4"&gt;Software Design Patterns&lt;br /&gt;&lt;/font&gt;&lt;font color="#ff0000" size="4"&gt;Nina Grantcharova&lt;br /&gt;&lt;/font&gt;Software Architect at LL Global &lt;br /&gt;02/21/2012 6:00PM Meet 6:30PM Presentation&lt;/p&gt;&lt;p align="center"&gt;&lt;font size="2"&gt;Sign up at: &lt;/font&gt;&lt;a href="http://www.iasaglobal.org/assnfe/ev.asp?ID=249"&gt;&lt;font size="2"&gt;http://www.iasaglobal.org/assnfe/ev.asp?ID=249&lt;/font&gt;&lt;/a&gt;&lt;font size="1"&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font size="1"&gt;Posted:&lt;br /&gt;Rainer Habermann&lt;br /&gt;President IASA SE Florida Chapter&lt;/font&gt;&lt;/p&gt; &lt;img src="http://geekswithblogs.net/Rainer/aggbug/148586.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/eB0c2Bh0K8k" height="1" width="1"/&gt;</description><dc:creator>Rainer Habermann</dc:creator><feedburner:origLink>http://geekswithblogs.net/Rainer/archive/2012/02/03/invitation-to-the-iasa-se-florida-chapter-meeting-on-02212012.aspx</feedburner:origLink></item><item><title>South Florida Code Camp 02/18/2012 at Nova University</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/xFMkDUzOFyY/south-florida-code-camp-02182012-at-nova-university.aspx</link><pubDate>Sat, 04 Feb 2012 03:16:27 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/Rainer/archive/2012/02/03/south-florida-code-camp-02182012-at-nova-university.aspx</guid><wfw:comment>http://geekswithblogs.net/Rainer/comments/148585.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/Rainer/comments/commentRss/148585.aspx</wfw:commentRss><comments>http://geekswithblogs.net/Rainer/archive/2012/02/03/south-florida-code-camp-02182012-at-nova-university.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/Rainer/services/trackbacks/148585.aspx</trackback:ping><source url="http://geekswithblogs.net/Rainer/rss.aspx">South Florida Code Camp 02/18/2012 at Nova University</source><description>&lt;p align="center"&gt;&lt;font size="4"&gt;South Florida Code Camp on 02/18/2012 - a free event: 66 Speakers - 14 Tracks - 81 Sessions&lt;/font&gt;&lt;/p&gt;&lt;p align="center"&gt;&lt;font size="4"&gt;Sign up to attend: &lt;/font&gt;&lt;a href="http://http://www.fladotnet.com/codecamp/"&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;&lt;font size="4"&gt;http://www.fladotnet.com/codecamp/&lt;/font&gt;&lt;/font&gt;&lt;/u&gt;&lt;/a&gt; &lt;/p&gt;&lt;p align="center"&gt;&lt;font size="2"&gt;Rainer Habermann&lt;br /&gt;SFCC Speaker Coordinator&lt;/font&gt;&lt;/p&gt;&lt;p align="center"&gt;&lt;u&gt;&lt;font color="#0066cc"&gt;&lt;/font&gt;&lt;/u&gt; &lt;/p&gt; &lt;img src="http://geekswithblogs.net/Rainer/aggbug/148585.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/xFMkDUzOFyY" height="1" width="1"/&gt;</description><dc:creator>Rainer Habermann</dc:creator><feedburner:origLink>http://geekswithblogs.net/Rainer/archive/2012/02/03/south-florida-code-camp-02182012-at-nova-university.aspx</feedburner:origLink></item><item><title>Migrating Custom Lists with Attachments from OLSB to Office 365</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/GfDsCG7mzH4/148584.aspx</link><pubDate>Fri, 03 Feb 2012 23:05:20 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/michaelstephenson/archive/2012/02/03/148584.aspx</guid><wfw:comment>http://geekswithblogs.net/michaelstephenson/comments/148584.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/michaelstephenson/comments/commentRss/148584.aspx</wfw:commentRss><comments>http://geekswithblogs.net/michaelstephenson/archive/2012/02/03/148584.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/michaelstephenson/services/trackbacks/148584.aspx</trackback:ping><source url="http://geekswithblogs.net/michaelstephenson/rss.aspx">Migrating Custom Lists with Attachments from OLSB to Office 365</source><description>&lt;p&gt;Before I get into this I am not an Office Live Small Business or Office 365 expert but I have used Office Live Small Business for number of years as a light weight way of managing some parts of my business.  I now need to migrate to Office 365 and one of the areas which concerned me was around custom lists which had attachments.  I had a number of these with lots of rows and I had been waiting for some information on how these would be migrated and hoped they would just be migrated for me automatically.
&lt;/p&gt;&lt;p&gt;When the migration guidance came out this was unfortunately not the case so I thought this post may help some others who have the same task to perform over the coming months before the final closure of OLSB.
&lt;/p&gt;&lt;p&gt;
 &lt;/p&gt;&lt;h1&gt;Step 1: Replicate the list structure
&lt;/h1&gt;&lt;p&gt;In your Office Live Small Business account open up the custom list and go to its settings so you can see the structure of the list.
&lt;/p&gt;&lt;p&gt;In your Office 365 account create the new custom list to replicate the structure from Office Live Small Business.
&lt;/p&gt;&lt;p&gt;A couple of recommendations here:
&lt;/p&gt;&lt;ul&gt;&lt;li&gt;You may want to consider leaving the constraints on columns such as choices etc for later and initially create the columns with simple types then fix them later
&lt;/li&gt;&lt;li&gt;Ensure the columns are in the same order to make things simpler
&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;
 &lt;/p&gt;&lt;h1&gt;Step 2: Open Your existing list in Microsoft Access
&lt;/h1&gt;&lt;p&gt;In your Office Live Small Business custom list use the Actions menu and select Open with Access.
&lt;/p&gt;&lt;p&gt;&lt;img src="http://geekswithblogs.net/images/geekswithblogs_net/michaelstephenson/020312_2251_MigratingCu1.png" alt="" /&gt;
	&lt;/p&gt;&lt;p&gt;This will open the list in Microsoft Access so you will obviously need it installed.
&lt;/p&gt;&lt;p&gt;When the list opens in access choose the option to export a copy of the data and an appropriate location to save it.
&lt;/p&gt;&lt;p&gt;&lt;img src="http://geekswithblogs.net/images/geekswithblogs_net/michaelstephenson/020312_2251_MigratingCu2.png" alt="" /&gt;
	&lt;/p&gt;&lt;p&gt;
 &lt;/p&gt;&lt;h1&gt;Step 3: Open your new list in Microsoft Access
&lt;/h1&gt;&lt;p&gt;In your Office 365 account open your list and select the Open with Access option highlighted below.
&lt;/p&gt;&lt;p&gt;
 &lt;/p&gt;&lt;p&gt;&lt;img src="http://geekswithblogs.net/images/geekswithblogs_net/michaelstephenson/020312_2251_MigratingCu3.png" alt="" /&gt;
	&lt;/p&gt;&lt;p&gt;When the list opens choose to have data linked to the sharepoint site like in the below pic.
&lt;/p&gt;&lt;p&gt;&lt;img src="http://geekswithblogs.net/images/geekswithblogs_net/michaelstephenson/020312_2251_MigratingCu4.png" alt="" /&gt;
	&lt;/p&gt;&lt;p&gt;
 &lt;/p&gt;&lt;h1&gt;Step 4: Copy the core data
&lt;/h1&gt;&lt;p&gt;Unfortunately you cannot copy everything all in one go because the rows must be created before an item can be attached.  From here the next thing to do is to select the column headers in the access instance from the Office Live Small Business list.  Select all headers except the one for the attachments column.  Like in the below picture.
&lt;/p&gt;&lt;p&gt;&lt;img src="http://geekswithblogs.net/images/geekswithblogs_net/michaelstephenson/020312_2251_MigratingCu5.png" alt="" /&gt;
	&lt;/p&gt;&lt;p&gt;Next go to the Access instance which is linked to the Sharepoint List in the Office 365 site.  Paste the lines into this Access instance.  The paste action will slowly insert the new rows into the Office 365 SharePoint List.
&lt;/p&gt;&lt;p&gt;
 &lt;/p&gt;&lt;h1&gt;Step 5: Copy Attachments
&lt;/h1&gt;&lt;p&gt;You should now have two Microsoft Access databases with the same rows in.  One a copy from Office Live Small Business and one with a linked table to the Office 365 SharePoint list.  The rows will all be in the same order.
&lt;/p&gt;&lt;p&gt;The next step is to copy the attachments.
&lt;/p&gt;&lt;p&gt;In the Office Live Small Business Access instance select the column header for the attachments.  The one with the paper clip symbol as its header.  Then copy the entire column.
&lt;/p&gt;&lt;p&gt;In the Office 365 Access instance select the attachments column header and paste the entire column.
&lt;/p&gt;&lt;p&gt;This paste action will probably take a while if you have a lot of attachments.
&lt;/p&gt;&lt;p&gt;
 &lt;/p&gt;&lt;h1&gt;Conclusion
&lt;/h1&gt;&lt;p&gt;As I mentioned at the start the biggest concern I had with the Office Live Small Business to Office 365 migration was around what to do with all of my custom lists and attachments.  Unfortunately the self migration guide wasn't very useful for this bit because It just said to export your data but didn't cover importing it or anything about attachments.
&lt;/p&gt;&lt;p&gt;As you can see this only took a short time to do so generally I am quite pleased that this is complete and I can now get on with enjoying the many new features of Office 365 and let my OLSB account disappear into the past.&lt;/p&gt; &lt;img src="http://geekswithblogs.net/michaelstephenson/aggbug/148584.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/GfDsCG7mzH4" height="1" width="1"/&gt;</description><dc:creator>Michael Stephenson</dc:creator><feedburner:origLink>http://geekswithblogs.net/michaelstephenson/archive/2012/02/03/148584.aspx</feedburner:origLink></item><item><title>Make sure computer names are 15 characters or less for MSMQ messages to get delivered</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/rn308UFSDEE/make-sure-computer-names-are-15-characters-or-less-fro.aspx</link><pubDate>Fri, 03 Feb 2012 22:01:11 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/Plumbersmate/archive/2012/02/03/make-sure-computer-names-are-15-characters-or-less-fro.aspx</guid><wfw:comment>http://geekswithblogs.net/Plumbersmate/comments/148583.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/Plumbersmate/comments/commentRss/148583.aspx</wfw:commentRss><comments>http://geekswithblogs.net/Plumbersmate/archive/2012/02/03/make-sure-computer-names-are-15-characters-or-less-fro.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/Plumbersmate/services/trackbacks/148583.aspx</trackback:ping><source url="http://geekswithblogs.net/Plumbersmate/rss.aspx">Make sure computer names are 15 characters or less for MSMQ messages to get delivered</source><description>&lt;p&gt;Thanks to &lt;a href="&amp;quot;https://twitter.com/seifattar"&gt;Seif Attar&lt;/a&gt; for highlighting this &lt;a&gt;problem.&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;It seems MSMQ doesn’t like sending to computers with names longer than 15 characters (which some may remember is the NetBIOS limitation).&lt;/p&gt;  &lt;p&gt;To try it out, I created a queue on a Windows XP machine with a computer name of VeryLongMSMQServer and sent off some test messages to&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;DIRECT=os:verylongmsmqserver\private$\txqueue&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;I requested acknowledgements so I could see any errors and wasn’t disappointed:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/Plumbersmate/Windows-Live-Writer/8944546f1097_130DA/image_8.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://geekswithblogs.net/images/geekswithblogs_net/Plumbersmate/Windows-Live-Writer/8944546f1097_130DA/image_thumb_3.png" width="425" height="470" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;As soon as I renamed the machine to ShortMSMQServer, restarted and sent new messages to &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;DIRECT=os:shortmsmqserver\private$\txqueue&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;the problem disappeared:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/Plumbersmate/Windows-Live-Writer/8944546f1097_130DA/image_10.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://geekswithblogs.net/images/geekswithblogs_net/Plumbersmate/Windows-Live-Writer/8944546f1097_130DA/image_thumb_4.png" width="424" height="468" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The messages are delivered to the destination’s queue manager in both cases but are rejected when the machine name is too long.&lt;/p&gt;  &lt;p&gt;My suspicion is that this is a NetBIOS limitation. When I initially changed the machines computer name to one that was too long, Windows XP complained “The NetBIOS name of the computer is limited to 15 bytes. The NetBIOS name will be shortened to “VERYLONGMSMQSER”.:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/Plumbersmate/Windows-Live-Writer/8944546f1097_130DA/image_2.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://geekswithblogs.net/images/geekswithblogs_net/Plumbersmate/Windows-Live-Writer/8944546f1097_130DA/image_thumb.png" width="427" height="83" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;I did try enabling the IgnoreOSNameValidation registry value in case that would help but no luck.&lt;/p&gt; &lt;img src="http://geekswithblogs.net/Plumbersmate/aggbug/148583.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/rn308UFSDEE" height="1" width="1"/&gt;</description><dc:creator>John Breakwell</dc:creator><feedburner:origLink>http://geekswithblogs.net/Plumbersmate/archive/2012/02/03/make-sure-computer-names-are-15-characters-or-less-fro.aspx</feedburner:origLink></item><item><title>Organizing Your Work With OneNote Page Templates</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/Uy-bnwm8t38/organizing-your-work-with-onenote-page-templates.aspx</link><pubDate>Fri, 03 Feb 2012 21:15:39 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/tmurphy/archive/2012/02/03/organizing-your-work-with-onenote-page-templates.aspx</guid><wfw:comment>http://geekswithblogs.net/tmurphy/comments/148582.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/tmurphy/comments/commentRss/148582.aspx</wfw:commentRss><comments>http://geekswithblogs.net/tmurphy/archive/2012/02/03/organizing-your-work-with-onenote-page-templates.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/tmurphy/services/trackbacks/148582.aspx</trackback:ping><source url="http://geekswithblogs.net/tmurphy/rss.aspx">Organizing Your Work With OneNote Page Templates</source><description>&lt;p&gt;If you have seen the Windows Phone commercial where the father is in the grocery store with the shopping list in OneNote you have gotten you first taste of the flexibility that can be had with OneNote.  I like most consultants have a lot of fires going and once and I am finding that the templates in OneNote are helping me to get a handle on the different projects and tasks I need to track.&lt;/p&gt;  &lt;p&gt;I started using OneNote to do simply what its name suggests: take and organize notes.  Lately though I am finding ways that it can help to centralize things that I had been using multiple applications to accomplish.  Having them all in one place, as with most things makes it easier to not miss something.&lt;/p&gt;  &lt;p&gt;You may find using the tasks feature of Outlook works well for you, but I found that I was in and out of my email so fast that I ignored the tasks.  As simple To Do List template in OneNote seems to be the solution for me since I spend so much time documenting projects.  As an alternative you can use the Prioritized To Do List shown below or the Project To Do List which gives you a list per project.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/tmurphy/Windows-Live-Writer/Leveraging-OneNote-Page-Templates_9D86/image_4.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://geekswithblogs.net/images/geekswithblogs_net/tmurphy/Windows-Live-Writer/Leveraging-OneNote-Page-Templates_9D86/image_thumb_1.png" width="676" height="466" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;When starting a project at a new client Project Overview is a great way to organize your thought and make sure that you cover all the essentials.  While I am just starting to use it this template is quickly proving its worth.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/tmurphy/Windows-Live-Writer/Leveraging-OneNote-Page-Templates_9D86/image_2.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://geekswithblogs.net/images/geekswithblogs_net/tmurphy/Windows-Live-Writer/Leveraging-OneNote-Page-Templates_9D86/image_thumb.png" width="642" height="445" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Of course if you don’t find a template that fits your needs you can create your own templates. Start with one of the standards and edit it.  Then click Save Current Page As A Template.  This is great especially for customizing templates like the project overview to suit you needs.&lt;/p&gt;  &lt;p&gt;There are many other features to this tool for you to explore.  Add to everything above that it is a write once, maintain anywhere product and I can easily access my notes from any browser or even my Windows Phone.  Life is getting just a little better.&lt;/p&gt;    &lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:bb985965-e1ee-4107-843f-4571c33dc5af" class="wlWriterEditableSmartContent"&gt;del.icio.us Tags: &lt;a href="http://del.icio.us/popular/OneNote" rel="tag"&gt;OneNote&lt;/a&gt;,&lt;a href="http://del.icio.us/popular/ToDo" rel="tag"&gt;ToDo&lt;/a&gt;,&lt;a href="http://del.icio.us/popular/Task+Management" rel="tag"&gt;Task Management&lt;/a&gt;,&lt;a href="http://del.icio.us/popular/Windows+Phone" rel="tag"&gt;Windows Phone&lt;/a&gt;,&lt;a href="http://del.icio.us/popular/Office" rel="tag"&gt;Office&lt;/a&gt;&lt;/div&gt; &lt;img src="http://geekswithblogs.net/tmurphy/aggbug/148582.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/Uy-bnwm8t38" height="1" width="1"/&gt;</description><dc:creator>Tim Murphy</dc:creator><feedburner:origLink>http://geekswithblogs.net/tmurphy/archive/2012/02/03/organizing-your-work-with-onenote-page-templates.aspx</feedburner:origLink></item><item><title>Implementing Team Foundation Server 2010 In A Mixed Development Environment</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/NIpMVOJH4TY/implementing-team-foundation-server-2010-in-a-mixed-development-environment.aspx</link><pubDate>Fri, 03 Feb 2012 18:58:05 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/tmurphy/archive/2012/02/03/implementing-team-foundation-server-2010-in-a-mixed-development-environment.aspx</guid><wfw:comment>http://geekswithblogs.net/tmurphy/comments/148581.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/tmurphy/comments/commentRss/148581.aspx</wfw:commentRss><comments>http://geekswithblogs.net/tmurphy/archive/2012/02/03/implementing-team-foundation-server-2010-in-a-mixed-development-environment.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/tmurphy/services/trackbacks/148581.aspx</trackback:ping><source url="http://geekswithblogs.net/tmurphy/rss.aspx">Implementing Team Foundation Server 2010 In A Mixed Development Environment</source><description>&lt;p&gt;Most of us spend our time in Visual Studio writing .NET code within a Visual Studio solution.  Given this situation we find it very easy to integrate with Team Foundation Server for our source control and have a well known work pattern.  But what happens when you want to use TFS as source control for non-Microsoft development?&lt;/p&gt;  &lt;p&gt;The most important thing to remember is that source control should be as transparent as possible to the developer.  If the particular language or product does not have an Integrated Development Environment then having plug-ins to maintain this transparency is not possible and your next concern is making the way the developers interact with TFS as simple as possible.&lt;/p&gt;  &lt;p&gt;Let’s assume that you are facing the latter situation.  The first thing to do is sit down with the team and find out what their normal process is for developing.  You need to find out how the code that becomes their executables are organized.  The key is striking a balance between logical separation and making extra work by creating too many projects.  If they users are accustomed to managing their code in a single folder then you may want to maintain that same structure for your TFS projects.&lt;/p&gt;  &lt;p&gt;Once you get past the structure issues you then need to address the subject of branching and labeling.  I recently ran into a situation where the non-Microsoft development was customization of a packaged software.  This presented additional considerations.  They get a copy of the off the shelf code with each release from the vendor.  There may be features that are actually removed from one release to the next.  This made it easier to start a new project for each release than using labels or branching.  The last thing they wanted was code files creeping back in if they got latest and only new files had been overwritten but the obsolete files were still there.&lt;/p&gt;  &lt;p&gt;In the end it boils down to understanding the needs of your development teams and molding your usage models to those needs.  Maintain as much transparency for your developers as possible by limiting the touch points for TFS and as often as possible allowing them to continue developing the way the always have.&lt;/p&gt;  &lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:2f4c4316-1007-425c-af02-bea96a2db8ee" class="wlWriterEditableSmartContent"&gt;del.icio.us Tags: &lt;a href="http://del.icio.us/popular/Team+Foundation+Server+2010" rel="tag"&gt;Team Foundation Server 2010&lt;/a&gt;,&lt;a href="http://del.icio.us/popular/Visual+Studio" rel="tag"&gt;Visual Studio&lt;/a&gt;&lt;/div&gt; &lt;img src="http://geekswithblogs.net/tmurphy/aggbug/148581.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/NIpMVOJH4TY" height="1" width="1"/&gt;</description><dc:creator>Tim Murphy</dc:creator><feedburner:origLink>http://geekswithblogs.net/tmurphy/archive/2012/02/03/implementing-team-foundation-server-2010-in-a-mixed-development-environment.aspx</feedburner:origLink></item><item><title>A nice feature of Style 4.7.7.0 </title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/Us9V9pdFQJE/a-nice-feature-of-style-4.7.7.0.aspx</link><pubDate>Fri, 03 Feb 2012 16:25:22 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/TATWORTH/archive/2012/02/03/a-nice-feature-of-style-4.7.7.0.aspx</guid><wfw:comment>http://geekswithblogs.net/TATWORTH/comments/148580.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/TATWORTH/comments/commentRss/148580.aspx</wfw:commentRss><comments>http://geekswithblogs.net/TATWORTH/archive/2012/02/03/a-nice-feature-of-style-4.7.7.0.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/TATWORTH/services/trackbacks/148580.aspx</trackback:ping><source url="http://geekswithblogs.net/TATWORTH/rss.aspx">A nice feature of Style 4.7.7.0 </source><description>I have just installed the latest stylecop 4.7.7.0 and the latest nightly build of Resharper (build 42) and they work well. Stylecop now has a feature whereby you can override the maximum number of issues reported. &lt;br /&gt;&lt;br /&gt;I used an an as-downloaded copy of PowerCollections and increased the limit to 100,000 issues and did a ReScan all with Stylecop. Here are the last 3 lines of the report:&lt;br /&gt;&lt;br /&gt;------ StyleCop completed ------&lt;br /&gt;&lt;br /&gt;========== Violation Count: 15080 ==========&lt;br /&gt; &lt;img src="http://geekswithblogs.net/TATWORTH/aggbug/148580.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/Us9V9pdFQJE" height="1" width="1"/&gt;</description><dc:creator>TATWORTH</dc:creator><feedburner:origLink>http://geekswithblogs.net/TATWORTH/archive/2012/02/03/a-nice-feature-of-style-4.7.7.0.aspx</feedburner:origLink></item><item><title>What will you be if computers weren't in existence?</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/OygOD_-OBKU/what-will-you-be-if-computers-werent-in-existence.aspx</link><pubDate>Fri, 03 Feb 2012 15:11:59 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/dotNETvinz/archive/2012/02/03/what-will-you-be-if-computers-werent-in-existence.aspx</guid><wfw:comment>http://geekswithblogs.net/dotNETvinz/comments/148578.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/dotNETvinz/comments/commentRss/148578.aspx</wfw:commentRss><comments>http://geekswithblogs.net/dotNETvinz/archive/2012/02/03/what-will-you-be-if-computers-werent-in-existence.aspx#comment</comments><slash:comments>4</slash:comments><trackback:ping>http://geekswithblogs.net/dotNETvinz/services/trackbacks/148578.aspx</trackback:ping><source url="http://geekswithblogs.net/dotNETvinz/rss.aspx">What will you be if computers weren't in existence?</source><description>&lt;p&gt;Yeah it's a tough question especially since most of us across the globe, both young and old heavily rely on computers and the internet . Today, life would be virtually impossible without it. When I was in elementary school I always dreamed of becoming an artist. I loved to paint and draw because I can express my thoughts and emotions through art. But things changed after I graduated  in high school because my family couldn't afford to send me to university. I earned my BS degree because I got a scholarship from STI to study computer science. So now I work as a web developer. But to answer the question, if computers didn't exist then I would be a carpenter and a farmer then I would create a machine from wood that will compile codes made out of paper that will produce kernels of corn ~ just kidding on that part =D. Seriously I would definitely be an architect or an artist because being an artist is having the freedom to express your personality through art. The picture below is one of my drawing which I’ve drawn a long long time ago. Not pretty cool but it rocks! :D&lt;/p&gt; &lt;center&gt;   &lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/dotNETvinz/WindowsLiveWriter/Whatwillyoubeifcomputerswerentinexistenc_14640/mydrawing_2.jpg"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="mydrawing" border="0" alt="mydrawing" src="http://geekswithblogs.net/images/geekswithblogs_net/dotNETvinz/WindowsLiveWriter/Whatwillyoubeifcomputerswerentinexistenc_14640/mydrawing_thumb.jpg" width="562" height="432" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;/center&gt;  &lt;p&gt;How about you? What do you think will you be doing now if computers weren't in existence?&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:81b6a56d-1bfa-4a40-a59a-9d36b6e9fe91" class="wlWriterEditableSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/Computers" rel="tag"&gt;Computers&lt;/a&gt;,&lt;a href="http://technorati.com/tags/General" rel="tag"&gt;General&lt;/a&gt;&lt;/div&gt; &lt;img src="http://geekswithblogs.net/dotNETvinz/aggbug/148578.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/OygOD_-OBKU" height="1" width="1"/&gt;</description><dc:creator>Vincent Maverick Durano</dc:creator><feedburner:origLink>http://geekswithblogs.net/dotNETvinz/archive/2012/02/03/what-will-you-be-if-computers-werent-in-existence.aspx</feedburner:origLink></item><item><title>APress Deal of the Day - 3/Feb/2012 - Pro SharePoint Designer 2010</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/E7MfIQKUs-o/apress-deal-of-the-day---3feb2012---pro-sharepoint.aspx</link><pubDate>Fri, 03 Feb 2012 11:49:36 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/TATWORTH/archive/2012/02/03/apress-deal-of-the-day---3feb2012---pro-sharepoint.aspx</guid><wfw:comment>http://geekswithblogs.net/TATWORTH/comments/148577.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/TATWORTH/comments/commentRss/148577.aspx</wfw:commentRss><comments>http://geekswithblogs.net/TATWORTH/archive/2012/02/03/apress-deal-of-the-day---3feb2012---pro-sharepoint.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/TATWORTH/services/trackbacks/148577.aspx</trackback:ping><source url="http://geekswithblogs.net/TATWORTH/rss.aspx">APress Deal of the Day - 3/Feb/2012 - Pro SharePoint Designer 2010</source><description>Today's $10 Deal of the day from APress at &lt;a target="_blank" href="http://www.apress.com/9781430236177"&gt;http://www.apress.com/9781430236177&lt;/a&gt; is Pro SharePoint Designer 2010&lt;br /&gt;&lt;br /&gt;"SharePoint Designer 2010 is the key to customizing and improving the functionality and appearance of SharePoint sites, and &lt;em&gt;Pro SharePoint Designer 2010&lt;/em&gt; is your one-stop shop to getting the most from this powerful application."&lt;br /&gt;
&lt;br /&gt;
&lt;img alt="book cover" src="http://www.apress.com/media/catalog/product/cache/9/small_image/125x/040ec09b1e35df139433887a97daa66f/9/7/9781430236177.png" /&gt; &lt;img src="http://geekswithblogs.net/TATWORTH/aggbug/148577.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/E7MfIQKUs-o" height="1" width="1"/&gt;</description><dc:creator>TATWORTH</dc:creator><feedburner:origLink>http://geekswithblogs.net/TATWORTH/archive/2012/02/03/apress-deal-of-the-day---3feb2012---pro-sharepoint.aspx</feedburner:origLink></item><item><title>Android Development with Eclipse</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/MqnFlWaYBp8/android-development-with-eclipse.aspx</link><pubDate>Fri, 03 Feb 2012 07:24:43 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/TomStickel/archive/2012/02/03/android-development-with-eclipse.aspx</guid><wfw:comment>http://geekswithblogs.net/TomStickel/comments/148576.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/TomStickel/comments/commentRss/148576.aspx</wfw:commentRss><comments>http://geekswithblogs.net/TomStickel/archive/2012/02/03/android-development-with-eclipse.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/TomStickel/services/trackbacks/148576.aspx</trackback:ping><source url="http://geekswithblogs.net/TomStickel/rss.aspx">Android Development with Eclipse</source><description>Install Eclipse&lt;div&gt;Then install the android plugin&lt;/div&gt;&lt;div&gt;&lt;a href="http://developer.android.com/sdk/eclipse-adt.html#installing"&gt;http://developer.android.com/sdk/eclipse-adt.html#installing&lt;/a&gt;
&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Basic Hello World&lt;/div&gt;&lt;div&gt;&lt;a href="http://developer.android.com/resources/tutorials/hello-world.html"&gt;http://developer.android.com/resources/tutorials/hello-world.html&lt;/a&gt;
&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;KSoap2 for WCF &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt; &lt;img src="http://geekswithblogs.net/TomStickel/aggbug/148576.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/MqnFlWaYBp8" height="1" width="1"/&gt;</description><dc:creator>TomStickel</dc:creator><feedburner:origLink>http://geekswithblogs.net/TomStickel/archive/2012/02/03/android-development-with-eclipse.aspx</feedburner:origLink></item><item><title>Structure and MVC3 and DI (Dependency Injection) Links to save</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/fOOVzp7h_e4/structure-and-mvc3-and-di-dependency-injection-links-to-save.aspx</link><pubDate>Fri, 03 Feb 2012 07:23:04 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/TomStickel/archive/2012/02/03/structure-and-mvc3-and-di-dependency-injection-links-to-save.aspx</guid><wfw:comment>http://geekswithblogs.net/TomStickel/comments/148575.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/TomStickel/comments/commentRss/148575.aspx</wfw:commentRss><comments>http://geekswithblogs.net/TomStickel/archive/2012/02/03/structure-and-mvc3-and-di-dependency-injection-links-to-save.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/TomStickel/services/trackbacks/148575.aspx</trackback:ping><source url="http://geekswithblogs.net/TomStickel/rss.aspx">Structure and MVC3 and DI (Dependency Injection) Links to save</source><description>&lt;div&gt;&lt;a href="http://hellspawndev.blogspot.com/2011/10/structuremap-mvc3-generic-repository.html"&gt;http://hellspawndev.blogspot.com/2011/10/structuremap-mvc3-generic-repository.html&lt;/a&gt;
&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://forums.asp.net/t/1729740.aspx/1"&gt;http://forums.asp.net/t/1729740.aspx/1&lt;/a&gt;
&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.thecodinghumanist.com/blog/archives/2011/1/20/structuremap-and-asp-net-mvc-3-getting-started"&gt;http://www.thecodinghumanist.com/blog/archives/2011/1/20/structuremap-and-asp-net-mvc-3-getting-started&lt;/a&gt;
&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.devtrends.co.uk/blog/how-not-to-do-dependency-injection-the-static-or-singleton-container"&gt;http://www.devtrends.co.uk/blog/how-not-to-do-dependency-injection-the-static-or-singleton-container&lt;/a&gt;
&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.mikesdotnetting.com/Article/117/Dependency-Injection-and-Inversion-of-Control-with-ASP.NET-MVC"&gt;http://www.mikesdotnetting.com/Article/117/Dependency-Injection-and-Inversion-of-Control-with-ASP.NET-MVC&lt;/a&gt;
&lt;/div&gt; &lt;img src="http://geekswithblogs.net/TomStickel/aggbug/148575.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/fOOVzp7h_e4" height="1" width="1"/&gt;</description><dc:creator>TomStickel</dc:creator><feedburner:origLink>http://geekswithblogs.net/TomStickel/archive/2012/02/03/structure-and-mvc3-and-di-dependency-injection-links-to-save.aspx</feedburner:origLink></item><item><title>Why I cancelled my Spotify Premium subscription - the tale of an atypical music consumer</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/ysSJrDhc00o/why-i-cancelled-my-spotify-premium-subscription---the-tale.aspx</link><pubDate>Fri, 03 Feb 2012 00:21:59 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/twickers/archive/2012/02/02/why-i-cancelled-my-spotify-premium-subscription---the-tale.aspx</guid><wfw:comment>http://geekswithblogs.net/twickers/comments/148573.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/twickers/comments/commentRss/148573.aspx</wfw:commentRss><comments>http://geekswithblogs.net/twickers/archive/2012/02/02/why-i-cancelled-my-spotify-premium-subscription---the-tale.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/twickers/services/trackbacks/148573.aspx</trackback:ping><source url="http://geekswithblogs.net/twickers/rss.aspx">Why I cancelled my Spotify Premium subscription - the tale of an atypical music consumer</source><description>&lt;p class="MsoNormal"&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;font size="4"&gt;Disclaimer&lt;/font&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;Firstly, I must come clean, I work for a digital music
company which is involved in digital music streaming and downloads.  In no way are the views expressed are the
views of the company for which I work. 
They are merely the subjective views of an atypical music consumer.  &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;I say atypical because despite being over 40, I seek out new
bands on the radio, using listen again on 6Music and BBC Introducing
programmes, such as Christian Carlisle’s excellent BBC Sheffield programme.  I make an effort to go to at least one gig
every month, including such gigs as the NME New Radar tour. 
Also, if I like a band, I will always try to buy their CDs, especially singles, my favourite
format.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;font size="4"&gt;My mobile use&lt;/font&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;In addition, my mobile phone use is also unusual, in that I
have a very old fashioned candy bar Windows Mobile 6.1 smartphone, a Benq E72.  This provides my voice and text service, and
also contains a 32Gb microSD card holding the 8000+ tracks that is my music
collection.  I listen to this using a
Sony MW600 Bluetooth headset, the combination of which is incredibly reliable. The E72 is a 2G
+ WiFi phone with no data plan, just calls and unlimited text messages for
£10 per month.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;I also own what is now termed a ‘smartphone’, an Orange San Francisco badged ZTE Blade flashed with a custom Android 2.2 ROM.  This contains a mobile broadband SIM
from Three, providing a monthly allowance of 5Gb of 3G data for £7.50, which
can be used directly or via tethering. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;font size="4"&gt;Spotify &lt;/font&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;b&gt;Getting hooked&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;I first began using a the Spotify client at work; the free service
including advertising, and enjoyed the ability to tap into a music catalogue
that included many tracks which I did not own myself.   I liked the shared playlists, which were
sometimes used to create office playlists to which everyone could contribute.  &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;The only downside, apart from the appalling quality of the
advertising segments, was the lack of some of my favourite music.  I’m a big fan of Spacemen 3, nothing
there.  Spiritualized, later releases,
but not all.  Sugar, no there.  B-sides of older singles, not there.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;It did grate that I had these tracks on my phone’s tiny 32Gb
microSD card, and on my laptop, but this was a free service, so I don't think it is really fair to complain.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;b&gt;Becoming a premium
subscriber&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;Eventually I decided to take the plunge and become a premium
subscriber.  Partly because of where I work and wanting to
see a rival music delivery system, but also due to a desire to remove the annoying advertisements
and allow me to access the mobile client on my Android phone and
download offline content that I didn’t own.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;For the first 3 or 4 months, it all seemed fine, I learnt the
quirks of the mobile client and accepted that there were a few faults, but it
was new, so that was to be expected.  The
lack of content could be partly solved by loading some of my own music
collection onto a microSD card in the ZTE Blade smartphone.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;b&gt;Immediacy&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;There was a high point of being a premium Spotify
subscriber.   On the top of a 27 bus
heading to Koko to an NME New Radar gig last October I spotted a tweet from the Joy
Formidable that their new single, The Big More, had been released. I fired up
Spotify and started downloading the tracks to listen to for the remainder of the journey.  This even included a live version of Whirring,
which was recorded at Koko in March, where I had been part of the audience
swept along by the beauty of the introduction played on a harp.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;This immediacy was quite intoxicating.  I heard that one of my favourite new bands had
released a new single, and downloaded it within minutes.  However, having an offline copy didn’t
prevent me buying the original, which as a CD only sold at gigs I couldn't attend, meant paying a premium for a copy sold on eBay.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;This is one of my key reasons for using Spotify; listening to a
new release, especially albums, and deciding whether it was worth buying the CD.
I will always prefer to own the CD, as it provides a high quality archive copy, with decent
artwork.  If I consider there are only a few tracks
worth having, I relent and buy digital downloads, but always burn
them to a CD for archive.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;b&gt;Disillusion&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;So this all sounds like it worked quite well.  I had music downloaded offline, which I would
have otherwise had to pay for, and I could access much more music than was
available from my own music collection, on my 32Gb microSD.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;However, it never did become my sole music player, and I
learnt that the offline files couldn’t replace the permanent access I had enjoyed
without the subscription.  The reasons
are a complex mix of poor application design, restrictive access and lack of breadth
of content outside mainstream music.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;b&gt;Poor user experience&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;I think the Android application is one of the more nasty
pieces of user interface design I have seen for some time.  I realise this is subjective but some really
poor design choices and I can only believe lack of any serious rival has
prevented these being addressed.  With no
real competition Spotify has no incentive to fix these issues.  There are some very obtuse menu options and idiocy such as the redundant ‘Are you sure you want to exit’ dialogs after you click
on the Exit menu. An important tenet of  interface design should be &lt;b&gt;Don't make the user feel stupid&lt;/b&gt;, which the Android client fails spectacularly;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;ol&gt;&lt;li&gt;&lt;span style="text-indent: -18pt; "&gt;If you update the Spotify application via the
Marketplace, despite claiming that all user data will be preserved, you’ll be
shocked when you realise that all your offline content will have been
removed. &lt;/span&gt;&lt;span style="text-indent: -18pt; "&gt;U&lt;/span&gt;&lt;span style="text-indent: -18pt; "&gt;sed up valuable 3G data allowance
downloading offline content?  Let’s hope
not as you’ll need to re-download it all again. 
It can be over emphasised that there is &lt;/span&gt;&lt;b style="text-indent: -18pt; "&gt;absolutely no warning &lt;/b&gt;&lt;span style="text-indent: -18pt; "&gt;that this is about to happen.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="text-indent: -18pt; "&gt;On the Android client you cannot alter the order
of items within the playlist.  I believe
this is possble on the iOS application, and I had hoped this would be fixed
within a few months, but apparently not. 
Clearly I must be meant to edit my playlists using my Windows client, obviously
when I’m out and about I couldn’t possibly want to do this. &lt;/span&gt;&lt;span style="text-indent: -18pt; "&gt;The only visible update I’ve seen in the Android
app was the inclusion of a Facebook login option.  Clearly Facebook login is a higher priority
than a functioning playlist.  Spotify have
processes to update the functionality of their Android client, but only for
items they consider worthy of the effort.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="text-indent: -18pt; "&gt;If you do add items to a playlist, they are
added as the next item to be played.  
That makes creating a decent playlist virtually impossible as you have
to build it from the end to the beginning, so no linking similar songs together
in the order you think of them, and building it while the first tracks are
playing.  This is really basic
stuff.  I know it is, because it was in
my media player on Windows CE (and Windows Phone) &lt;/span&gt;&lt;b style="text-indent: -18pt; "&gt;TEN &lt;/b&gt;&lt;span style="text-indent: -18pt; "&gt;years ago.  It’s also
something I do a lot, while listening to one song, it jars my emotional memory,
and triggers a string of new tracks to add to the playlist&lt;/span&gt;&lt;span style="text-indent: -18pt; "&gt;.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span style="text-indent: -18pt; "&gt;And don’t get me started on Bluetooth support.  This may be the ZTE Blade to blame, but it is
massively not reliable, it stutters through songs, especially tracks not
already offline, and don’t alternate between using the Bluetooth and the screen
UI controls to change tracks.  It all
gets massively out of sync, with incorrect song titles and album art, so you
really have no idea what you are playing. &lt;/span&gt;And that poor Bluetooth support also means
that if you pause the music, and the device enters standby, you have to unlock
the phone to restart the music.  On my
Benq E72 the keypad may be locked but the pause, prev and next buttons on the Bluetooth
headset are still fully functional.&lt;/li&gt;&lt;/ol&gt;&lt;p class="MsoListParagraphCxSpLast"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;Even the Windows application has real issues.  The auto update functionality means every now
and then I start Spotify, see the playlist appear, only for it to vanish
without warning, or any message, to reappear a minute or so later, updated, and
with no explanation of what might have changed or if content requires to be
downloaded again.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;b&gt;Music – here today
and gone tomorrow, or never there at all&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;To some extent I can cope with the lack of some obscure music
being on Spotify, and I don’t resent artists such as Adele (and her label, XL
Recordings) for refusing to allow her latest album onto the system. If Adele doesn't want to cannibalise CD and digital downloads and doesn't need the exposure Spotify provides to smaller bands, then good on her.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;More of an issue is seeing albums you have downloaded
offline vanish without warning, as happened with The Burns Unit, ‘Side Show’.  Having got used to listening to this as part
of my subscription, with no advance warning, a message appeared one day saying it was being
removed as it was no longer available.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;As far as I am aware, no CD I have every bought has informed me
that the music was no longer available so that I opened the case to find the
silver disc strangely absent.  &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;b&gt;Value for money&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;The final nail in the coffin is the value for money.  For me it became obvious that it represented
poor value for money.  In the six months
I have had a subscription I have never really had more than 10 offline files
that I do not own on a physical CD or digital download.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;I could have happily downloaded every track for the price of
one month’s subscription, and even worse, I could happily buy every album
containing those tracks for the price of the six months of subscribing to the
premium service.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;It is sobering to consider that I pay just under £40 per
month for a satellite television subscription with BskyB and £10 of that is for
unlimited broadband. So in terms of content, Sky provide 100’s of television channels,
repeatedly update the EPG and Sky+ system and put a huge amount of effort into usability
of both of these applications.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;In comparison, Spotify, for a third of this amount provides a
poor user experience, especially on mobile, with much less valuable additional content to my own music collection&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;&lt;b&gt;Should Spotify be worried?&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;Here is the reality – I don’t think Spotify should be worried.  I know a much larger number of people who are
very satisfied with their subscription.  For
them, the issues I have raised don’t really affect them, and Spotify provides a
very useful means to instantly access a massive amount of music with the added
benefit of social interaction with friends.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;Even so I think Spotify shouldn't be complacent.  They need to realise that selling subscriptions
does mean that they will have to care more about treating their customers
better.  That means all customers, even
if they have the temerity to use an Android handset.  &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;They will also have to deal with artists better, and pay them
properly, or more will decide to remove access to their content.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;And finally, I think they may need to reconsider removing
the reliance on Facebook logins for all new users.  I was an early user so I still have my original Spotify login. I know that if I needed to use Facebook just to access Spotify I would never have
used it in the first place.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;

&lt;p class="MsoNormal"&gt;But then, as I've mentioned, I’m an atypical music consumer.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt; &lt;img src="http://geekswithblogs.net/twickers/aggbug/148573.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/ysSJrDhc00o" height="1" width="1"/&gt;</description><dc:creator>Liam Westley</dc:creator><feedburner:origLink>http://geekswithblogs.net/twickers/archive/2012/02/02/why-i-cancelled-my-spotify-premium-subscription---the-tale.aspx</feedburner:origLink></item><item><title>Archive Links of Things to Read / Research / look it...</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/5V-KthY1uyQ/archive-links-of-things-to-read--research--look.aspx</link><pubDate>Thu, 02 Feb 2012 21:34:21 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/TomStickel/archive/2012/02/02/archive-links-of-things-to-read--research--look.aspx</guid><wfw:comment>http://geekswithblogs.net/TomStickel/comments/148572.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/TomStickel/comments/commentRss/148572.aspx</wfw:commentRss><comments>http://geekswithblogs.net/TomStickel/archive/2012/02/02/archive-links-of-things-to-read--research--look.aspx#comment</comments><slash:comments>1</slash:comments><trackback:ping>http://geekswithblogs.net/TomStickel/services/trackbacks/148572.aspx</trackback:ping><source url="http://geekswithblogs.net/TomStickel/rss.aspx">Archive Links of Things to Read / Research / look it...</source><description>&lt;a href="http://www.hanselman.com/blog/ThreeThingsILearnedAboutSoftwareWHILENOTInCollege.aspx"&gt;http://www.hanselman.com/blog/ThreeThingsILearnedAboutSoftwareWHILENOTInCollege.aspx&lt;/a&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.hanselman.com/blog/ScottHanselmans2011UltimateDeveloperAndPowerUsersToolListForWindows.aspx"&gt;http://www.hanselman.com/blog/ScottHanselmans2011UltimateDeveloperAndPowerUsersToolListForWindows.aspx&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.soapui.org/SOAP-and-WSDL/adding-headers-and-attachments.html"&gt;http://www.soapui.org/SOAP-and-WSDL/adding-headers-and-attachments.html&lt;/a&gt;
&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://developer.android.com/guide/developing/index.html"&gt;http://developer.android.com/guide/developing/index.html&lt;/a&gt;
&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.matthewbussa.com/2011/05/installing-and-configuring-cruise.html"&gt;http://www.matthewbussa.com/2011/05/installing-and-configuring-cruise.html&lt;/a&gt;
&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.blog.ingenuitynow.net/How+To+Unit+Test+Code+That+Uses+AppSettings+From+WebConfig.aspx"&gt;http://www.blog.ingenuitynow.net/How+To+Unit+Test+Code+That+Uses+AppSettings+From+WebConfig.aspx&lt;/a&gt;&lt;/div&gt; &lt;img src="http://geekswithblogs.net/TomStickel/aggbug/148572.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/5V-KthY1uyQ" height="1" width="1"/&gt;</description><dc:creator>TomStickel</dc:creator><feedburner:origLink>http://geekswithblogs.net/TomStickel/archive/2012/02/02/archive-links-of-things-to-read--research--look.aspx</feedburner:origLink></item><item><title>Testing WCF Web Services</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/_K9OXU52EMM/testing-wcf-web-services.aspx</link><pubDate>Thu, 02 Feb 2012 21:25:38 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/TomStickel/archive/2012/02/02/testing-wcf-web-services.aspx</guid><wfw:comment>http://geekswithblogs.net/TomStickel/comments/148571.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/TomStickel/comments/commentRss/148571.aspx</wfw:commentRss><comments>http://geekswithblogs.net/TomStickel/archive/2012/02/02/testing-wcf-web-services.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/TomStickel/services/trackbacks/148571.aspx</trackback:ping><source url="http://geekswithblogs.net/TomStickel/rss.aspx">Testing WCF Web Services</source><description>Recently someone was showing me WCFStorm for testing WCF services, which is very simple to use.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;However, SOAPUI certainly has a lot of power.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I needed to add an image to send to a service and noticed that references&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.soapui.org/SOAP-and-WSDL/adding-headers-and-attachments.html"&gt;http://www.soapui.org/SOAP-and-WSDL/adding-headers-and-attachments.html&lt;/a&gt;
&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;My XML ended up looking like this:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&amp;lt;soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ubox="UBoxMobileService.Interfaces" xmlns:ubox1="UBoxMobile.Data.Classes"&amp;gt;&lt;/div&gt;&lt;div&gt;   &amp;lt;soapenv:Header/&amp;gt;&lt;/div&gt;&lt;div&gt;   &amp;lt;soapenv:Body&amp;gt;&lt;/div&gt;&lt;div&gt;      &amp;lt;ubox:UploadCustomerSignature&amp;gt;&lt;/div&gt;&lt;div&gt;         &amp;lt;!--Optional:--&amp;gt;&lt;/div&gt;&lt;div&gt;         &amp;lt;ubox:request&amp;gt;&lt;/div&gt;&lt;div&gt;            &amp;lt;ubox:UserIdMakingRequest&amp;gt;320628&amp;lt;/ubox:UserIdMakingRequest&amp;gt;&lt;/div&gt;&lt;div&gt;            &amp;lt;ubox:Entity&amp;gt;990019&amp;lt;/ubox:Entity&amp;gt;&lt;/div&gt;&lt;div&gt;            &amp;lt;ubox:TimeStamp&amp;gt;2010-09-23T10:00:00.0000&amp;lt;/ubox:TimeStamp&amp;gt;&lt;/div&gt;&lt;div&gt;            &amp;lt;!--Optional:--&amp;gt;&lt;/div&gt;&lt;div&gt;            &amp;lt;ubox:ServiceCredentials&amp;gt;&lt;/div&gt;&lt;div&gt;               &amp;lt;!--Optional:--&amp;gt;&lt;/div&gt;&lt;div&gt;               &amp;lt;ubox:Username&amp;gt;User&amp;lt;/ubox:Username&amp;gt;&lt;/div&gt;&lt;div&gt;               &amp;lt;!--Optional:--&amp;gt;&lt;/div&gt;&lt;div&gt;               &amp;lt;ubox:Password&amp;gt;mypassword&amp;lt;/ubox:Password&amp;gt;&lt;/div&gt;&lt;div&gt;            &amp;lt;/ubox:ServiceCredentials&amp;gt;&lt;/div&gt;&lt;div&gt;            &amp;lt;!--Optional:--&amp;gt;&lt;/div&gt;&lt;div&gt;            &amp;lt;ubox:CurrentLocation&amp;gt;&lt;/div&gt;&lt;div&gt;               &amp;lt;!--Optional:--&amp;gt;&lt;/div&gt;&lt;div&gt;               &amp;lt;ubox1:Name&amp;gt;t&amp;lt;/ubox1:Name&amp;gt;&lt;/div&gt;&lt;div&gt;               &amp;lt;ubox1:Type&amp;gt;Customer&amp;lt;/ubox1:Type&amp;gt;&lt;/div&gt;&lt;div&gt;               &amp;lt;!--Optional:--&amp;gt;&lt;/div&gt;&lt;div&gt;               &amp;lt;ubox1:LatLong&amp;gt;&lt;/div&gt;&lt;div&gt;                  &amp;lt;ubox1:Latitude&amp;gt;34&amp;lt;/ubox1:Latitude&amp;gt;&lt;/div&gt;&lt;div&gt;                  &amp;lt;ubox1:Longitude&amp;gt;34&amp;lt;/ubox1:Longitude&amp;gt;&lt;/div&gt;&lt;div&gt;               &amp;lt;/ubox1:LatLong&amp;gt;&lt;/div&gt;&lt;div&gt;               &amp;lt;!--Optional:--&amp;gt;&lt;/div&gt;&lt;div&gt;               &amp;lt;ubox1:Address&amp;gt;&lt;/div&gt;&lt;div&gt;                  &amp;lt;!--Optional:--&amp;gt;&lt;/div&gt;&lt;div&gt;                  &amp;lt;ubox1:Line1&amp;gt;d&amp;lt;/ubox1:Line1&amp;gt;&lt;/div&gt;&lt;div&gt;                  &amp;lt;!--Optional:--&amp;gt;&lt;/div&gt;&lt;div&gt;                  &amp;lt;ubox1:Line2&amp;gt;d&amp;lt;/ubox1:Line2&amp;gt;&lt;/div&gt;&lt;div&gt;                  &amp;lt;!--Optional:--&amp;gt;&lt;/div&gt;&lt;div&gt;                  &amp;lt;ubox1:Line3&amp;gt;d&amp;lt;/ubox1:Line3&amp;gt;&lt;/div&gt;&lt;div&gt;                  &amp;lt;!--Optional:--&amp;gt;&lt;/div&gt;&lt;div&gt;                  &amp;lt;ubox1:City&amp;gt;d&amp;lt;/ubox1:City&amp;gt;&lt;/div&gt;&lt;div&gt;                  &amp;lt;!--Optional:--&amp;gt;&lt;/div&gt;&lt;div&gt;                  &amp;lt;ubox1:State&amp;gt;az&amp;lt;/ubox1:State&amp;gt;&lt;/div&gt;&lt;div&gt;                  &amp;lt;!--Optional:--&amp;gt;&lt;/div&gt;&lt;div&gt;                  &amp;lt;ubox1:PostalCode&amp;gt;85295&amp;lt;/ubox1:PostalCode&amp;gt;&lt;/div&gt;&lt;div&gt;               &amp;lt;/ubox1:Address&amp;gt;&lt;/div&gt;&lt;div&gt;               &amp;lt;ubox1:CenterNumber&amp;gt;0&amp;lt;/ubox1:CenterNumber&amp;gt;&lt;/div&gt;&lt;div&gt;            &amp;lt;/ubox:CurrentLocation&amp;gt;&lt;/div&gt;&lt;div&gt;            &amp;lt;ubox:ContractId&amp;gt;9559206&amp;lt;/ubox:ContractId&amp;gt;&lt;/div&gt;&lt;div&gt;            &amp;lt;ubox:DetailsId&amp;gt;8254262&amp;lt;/ubox:DetailsId&amp;gt;&lt;/div&gt;&lt;div&gt;            &amp;lt;!--Optional:--&amp;gt;&lt;/div&gt;&lt;div&gt;            &amp;lt;ubox:ImageData&amp;gt;cid:Frs.jpg&amp;lt;/ubox:ImageData&amp;gt;&lt;/div&gt;&lt;div&gt;            &amp;lt;ubox:IsSignature&amp;gt;true&amp;lt;/ubox:IsSignature&amp;gt;&lt;/div&gt;&lt;div&gt;         &amp;lt;/ubox:request&amp;gt;&lt;/div&gt;&lt;div&gt;      &amp;lt;/ubox:UploadCustomerSignature&amp;gt;&lt;/div&gt;&lt;div&gt;   &amp;lt;/soapenv:Body&amp;gt;&lt;/div&gt;&lt;div&gt;&amp;lt;/soapenv:Envelope&amp;gt;&lt;/div&gt;&lt;/div&gt; &lt;img src="http://geekswithblogs.net/TomStickel/aggbug/148571.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/_K9OXU52EMM" height="1" width="1"/&gt;</description><dc:creator>TomStickel</dc:creator><feedburner:origLink>http://geekswithblogs.net/TomStickel/archive/2012/02/02/testing-wcf-web-services.aspx</feedburner:origLink></item><item><title>Stamp to honour flyby of Pluto by the New Horizons Spacecraft</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/HqiQ_9mHmOM/stamp-to-honour-flyby-of-pluto-by-the-new-horizons.aspx</link><pubDate>Thu, 02 Feb 2012 20:21:31 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/TATWORTH/archive/2012/02/02/stamp-to-honour-flyby-of-pluto-by-the-new-horizons.aspx</guid><wfw:comment>http://geekswithblogs.net/TATWORTH/comments/148570.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/TATWORTH/comments/commentRss/148570.aspx</wfw:commentRss><comments>http://geekswithblogs.net/TATWORTH/archive/2012/02/02/stamp-to-honour-flyby-of-pluto-by-the-new-horizons.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/TATWORTH/services/trackbacks/148570.aspx</trackback:ping><source url="http://geekswithblogs.net/TATWORTH/rss.aspx">Stamp to honour flyby of Pluto by the New Horizons Spacecraft</source><description>The New Horizons team are asking that the flyby of Pluto by the New 
Horizons spacescraft be honoured by the issue of a stamp. Please sign up
 at &lt;a target="_blank" href="http://www.change.org/petitions/usps-honor-new-horizons-and-the-exploration-of-pluto-with-a-usps-stamp"&gt;http://www.change.org/petitions/usps-honor-new-horizons-and-the-exploration-of-pluto-with-a-usps-stamp&lt;/a&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;img alt="suggested stamp" src="http://pluto.jhuapl.edu/images/mainPage/NH_Thumb_2-1-12.jpg" /&gt; &lt;img src="http://geekswithblogs.net/TATWORTH/aggbug/148570.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/HqiQ_9mHmOM" height="1" width="1"/&gt;</description><dc:creator>TATWORTH</dc:creator><feedburner:origLink>http://geekswithblogs.net/TATWORTH/archive/2012/02/02/stamp-to-honour-flyby-of-pluto-by-the-new-horizons.aspx</feedburner:origLink></item><item><title>My favorites visual studio extensions</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/aRJ4Pc06lkk/my-favorites-visual-studio-extensions.aspx</link><pubDate>Thu, 02 Feb 2012 20:18:52 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/ebartolesi/archive/2012/02/02/my-favorites-visual-studio-extensions.aspx</guid><wfw:comment>http://geekswithblogs.net/ebartolesi/comments/148569.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/ebartolesi/comments/commentRss/148569.aspx</wfw:commentRss><comments>http://geekswithblogs.net/ebartolesi/archive/2012/02/02/my-favorites-visual-studio-extensions.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/ebartolesi/services/trackbacks/148569.aspx</trackback:ping><source url="http://geekswithblogs.net/ebartolesi/rss.aspx">My favorites visual studio extensions</source><description>&lt;p&gt;Visual Studio 2010 offers a collection of extensions that help the developer's life.   &lt;br /&gt;In this list I try to share some that I hope will help you as they have helped me.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://channel9.msdn.com/achievements/visualstudio" target="_blank"&gt;Visual Studio Achievement Extension&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;This extension is less useful than the whole list, but one of my favorites.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://visualstudiogallery.msdn.microsoft.com/27077b70-9dad-4c64-adcf-c7cf6bc9970c" target="_blank"&gt;NuGet Package Manager&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;This is a package management system for the platform. NET that simplifies the inclusion of third-party libraries in your projects. The included libraries are automatically updated.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://visualstudiogallery.msdn.microsoft.com/d0d33361-18e2-46c0-8ff2-4adea1e34fef/" target="_blank"&gt;Productivity Power Tools&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The first extension that I installed on my dev machine. &lt;img style="border-bottom-style: none; border-left-style: none; border-top-style: none; border-right-style: none" class="wlEmoticon wlEmoticon-smile" alt="Sorriso" src="http://geekswithblogs.net/images/geekswithblogs_net/ebartolesi/Windows-Live-Writer/My-favourites-visual-studio-extensions_11CEB/wlEmoticon-smile_2.png" /&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://visualstudiogallery.msdn.microsoft.com/e5f41ad9-4edc-4912-bca3-91147db95b99" target="_blank"&gt;PowerCommands for Visual Studio 2010&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;This extension adds many features to the IDE.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://visualstudiogallery.msdn.microsoft.com/d491911d-97f3-4cf6-87b0-6a2882120acf" target="_blank"&gt;VSCommands 2010&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Navigation and generation code improvements.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://visualstudiogallery.msdn.microsoft.com/dace3633-0b51-4629-85d4-c59cdce5bb3b" target="_blank"&gt;Code Compare&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;With this extension you can compare code (in file and folder) very easily.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://submain.com/products/ghostdoc.aspx" target="_blank"&gt;GhostDOC&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;I use this extension since many years and I can’t live without it. &lt;img style="border-bottom-style: none; border-left-style: none; border-top-style: none; border-right-style: none" class="wlEmoticon wlEmoticon-smile" alt="Sorriso" src="http://geekswithblogs.net/images/geekswithblogs_net/ebartolesi/Windows-Live-Writer/My-favourites-visual-studio-extensions_11CEB/wlEmoticon-smile_2.png" /&gt;    &lt;br /&gt;It creates XML documentation from comments.&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p&gt;If you found other interesting extensions, do not hesitate to contact me!&lt;/p&gt; &lt;img src="http://geekswithblogs.net/ebartolesi/aggbug/148569.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/aRJ4Pc06lkk" height="1" width="1"/&gt;</description><dc:creator>Emanuele Bartolesi</dc:creator><feedburner:origLink>http://geekswithblogs.net/ebartolesi/archive/2012/02/02/my-favorites-visual-studio-extensions.aspx</feedburner:origLink></item><item><title>Just slowing down a bit...</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/e9gsIhsoWuM/just-slowing-down-a-bit.aspx</link><pubDate>Thu, 02 Feb 2012 20:11:29 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/BlackRabbitCoder/archive/2012/02/02/just-slowing-down-a-bit.aspx</guid><wfw:comment>http://geekswithblogs.net/BlackRabbitCoder/comments/148568.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/BlackRabbitCoder/comments/commentRss/148568.aspx</wfw:commentRss><comments>http://geekswithblogs.net/BlackRabbitCoder/archive/2012/02/02/just-slowing-down-a-bit.aspx#comment</comments><slash:comments>7</slash:comments><trackback:ping>http://geekswithblogs.net/BlackRabbitCoder/services/trackbacks/148568.aspx</trackback:ping><source url="http://geekswithblogs.net/BlackRabbitCoder/rss.aspx">Just slowing down a bit...</source><description>Given recent changes in my personal life with my son's diagnosis I will probably be blogging more on a bi-weekly basis instead of weekly for a while.  I'm hoping this will be a temporary change until we get things all in order.  &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Also, I may be sprinkling in a few C++ posts as well to keep things fresh.  I've been working on a C++ project as of late and though it is no longer my primary language, I still feel it has a lot of power and is worth knowing well.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Thanks for your understanding!  &lt;/div&gt; &lt;img src="http://geekswithblogs.net/BlackRabbitCoder/aggbug/148568.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/e9gsIhsoWuM" height="1" width="1"/&gt;</description><dc:creator>James Michael Hare</dc:creator><feedburner:origLink>http://geekswithblogs.net/BlackRabbitCoder/archive/2012/02/02/just-slowing-down-a-bit.aspx</feedburner:origLink></item><item><title>SQL Server NOLOCK</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/gwO3wPkNlW0/sql-server-nolock.aspx</link><pubDate>Thu, 02 Feb 2012 18:45:52 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/TomStickel/archive/2012/02/02/sql-server-nolock.aspx</guid><wfw:comment>http://geekswithblogs.net/TomStickel/comments/148566.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/TomStickel/comments/commentRss/148566.aspx</wfw:commentRss><comments>http://geekswithblogs.net/TomStickel/archive/2012/02/02/sql-server-nolock.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/TomStickel/services/trackbacks/148566.aspx</trackback:ping><source url="http://geekswithblogs.net/TomStickel/rss.aspx">SQL Server NOLOCK</source><description>&lt;h2 style="margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-size: 1.43em; font-family: 'Helvetica Neue', Helvetica, sans-serif; vertical-align: baseline; line-height: 1.23em; color: rgb(55, 65, 75); background-color: rgb(255, 255, 255); "&gt;Pros and Cons of NOLOCK&lt;/h2&gt;&lt;div&gt;&lt;span style="color: rgb(74, 74, 73); font-family: Arial, sans-serif; font-size: 12px; line-height: 17px; text-align: left; background-color: rgb(238, 234, 232); "&gt;I have seen some developers use WITH (NOLOCK) when querying in SQL Server and wonder why they use. Now i explored it and found that its useful to improve the performance in executing the query. However there is a disadvantage in using it. The disadvantage is that one may not be sure that they are getting the data which is currently being updated in the Table ie &lt;/span&gt;&lt;b style="color: rgb(74, 74, 73); font-family: Arial, sans-serif; font-size: 12px; line-height: 17px; text-align: left; background-color: rgb(238, 234, 232); "&gt;Without lock protection, you cannot be guaranteed that the data isn’t changing during the time that the query is running.&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;font color="#4a4a49" face="Arial, sans-serif"&gt;&lt;span style="font-size: 12px; line-height: 17px;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;font color="#4a4a49" face="Arial, sans-serif"&gt;&lt;span style="font-size: 12px; line-height: 17px;"&gt;&lt;b&gt;With these "Hints"  you can quickly see where problems can occur:  &lt;/b&gt;&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;&lt;h3 class="post-name" style="color: rgb(58, 62, 67); clear: both; font-family: 'Segoe UI Semibold', 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-weight: normal; line-height: 26px; font-size: 1.75em; margin-top: 0px; margin-right: 0px; margin-bottom: 12px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; text-align: left; background-color: rgb(206, 213, 219); "&gt;SQL Server NOLOCK Hint &amp;amp; other poor ideas.&lt;/h3&gt;&lt;div&gt;&lt;a href="http://blogs.msdn.com/b/davidlean/archive/2009/04/06/sql-server-nolock-hint-other-poor-ideas.aspx"&gt;http://blogs.msdn.com/b/davidlean/archive/2009/04/06/sql-server-nolock-hint-other-poor-ideas.aspx&lt;/a&gt;
&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;font color="#37414b" face="'Helvetica Neue', Helvetica, sans-serif"&gt;&lt;span style="font-size: 14px; line-height: 19px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;&lt;h2 style="margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-size: 1.43em; font-family: 'Helvetica Neue', Helvetica, sans-serif; vertical-align: baseline; line-height: 1.23em; color: rgb(55, 65, 75); background-color: rgb(255, 255, 255); "&gt;NOLOCK&lt;/h2&gt;&lt;p style="margin-top: 0px; margin-right: 0px; margin-bottom: 15px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-size: 14px; font-family: 'Helvetica Neue', Helvetica, sans-serif; vertical-align: baseline; color: rgb(55, 65, 75); line-height: 19px; background-color: rgb(255, 255, 255); "&gt;This table hint, also known as READUNCOMMITTED, is applicable to SELECT statements only. NOLOCK indicates that no shared locks are issued against the table that would prohibit other transactions from modifying the data in the table.&lt;/p&gt;&lt;p style="margin-top: 0px; margin-right: 0px; margin-bottom: 15px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-size: 14px; font-family: 'Helvetica Neue', Helvetica, sans-serif; vertical-align: baseline; color: rgb(55, 65, 75); line-height: 19px; background-color: rgb(255, 255, 255); "&gt;The benefit of the statement is that it allows you to keep the database engine from issuing locks against the tables in your queries; this increases concurrency and performance because the database engine does not have to maintain the shared locks involved. The downside is that, because the statement does not issue any locks against the tables being read, some "dirty," uncommitted data could potentially be read. A "dirty" read is one in which the data being read is involved in a transaction from another connection. If that transaction rolls back its work, the data read from the connection using NOLOCK will have read uncommitted data. This type of read makes processing inconsistent and can lead to problems. The trick is being able to know when you should use NOLOCK.&lt;/p&gt;&lt;p style="margin-top: 0px; margin-right: 0px; margin-bottom: 15px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-size: 14px; font-family: 'Helvetica Neue', Helvetica, sans-serif; vertical-align: baseline; color: rgb(55, 65, 75); line-height: 19px; background-color: rgb(255, 255, 255); "&gt;&lt;/p&gt;&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; line-height: normal; font-size: medium; "&gt;&lt;span style="color: rgb(55, 65, 75); font-family: 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; line-height: 19px; "&gt;As a side note, NOLOCK queries also run the risk of reading&lt;b&gt; "phantom"&lt;/b&gt; data, or data rows that are available in one database transaction read but can be rolled back in another. &lt;/span&gt;&lt;/div&gt;&lt;p style="margin-top: 0px; margin-right: 0px; margin-bottom: 15px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-size: 14px; vertical-align: baseline; background-color: rgb(255, 255, 255); "&gt;&lt;/p&gt;&lt;pre style="margin-top: 0px; margin-bottom: 10px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; vertical-align: baseline; font: normal normal normal 1em/normal 'andale mono', 'lucida console', monospace; word-wrap: break-word; "&gt;&lt;span style="color: rgb(55, 65, 75); font-family: 'Helvetica Neue', Helvetica, sans-serif; line-height: 19px; "&gt;The following example shows how NOLOCK works and how dirty reads can occur. In the script below, I begin a transaction and insert a record in the SalesHistory table.&lt;/span&gt;&lt;/pre&gt;&lt;p style="margin-top: 0px; margin-right: 0px; margin-bottom: 15px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-size: 14px; font-family: 'Helvetica Neue', Helvetica, sans-serif; vertical-align: baseline; color: rgb(55, 65, 75); line-height: 19px; background-color: rgb(255, 255, 255); "&gt;&lt;/p&gt;&lt;pre style="margin-top: 0px; margin-bottom: 10px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-family: consolas, 'Courier New', courier, monospace; vertical-align: baseline; white-space: pre-wrap; font: normal normal normal 1em/normal 'andale mono', 'lucida console', monospace; color: rgb(52, 82, 32); word-wrap: break-word; "&gt;BEGIN TRANSACTION&lt;br /&gt;      INSERT INTO SalesHistory&lt;br /&gt;      (Product, SaleDate, SalePrice)          &lt;br /&gt;      VALUES            &lt;br /&gt;      ('PoolTable', GETDATE(), 500)                   &lt;/pre&gt;&lt;p style="margin-top: 0px; margin-right: 0px; margin-bottom: 15px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; vertical-align: baseline; "&gt;The transaction is still open, which means that the record that was inserted into the table still has locks issued against it. In a new query window, run the following script, which uses the NOLOCK table hint in returning the number of records in the SalesHistory table.&lt;/p&gt;&lt;pre style="margin-top: 0px; margin-bottom: 10px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-family: consolas, 'Courier New', courier, monospace; vertical-align: baseline; white-space: pre-wrap; font: normal normal normal 1em/normal 'andale mono', 'lucida console', monospace; color: rgb(52, 82, 32); word-wrap: break-word; "&gt;SELECT COUNT(*) FROM SalesHistory WITH(NOLOCK)&lt;/pre&gt;&lt;p style="margin-top: 0px; margin-right: 0px; margin-bottom: 15px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; vertical-align: baseline; "&gt;The number of records returned is 301. Since the transaction that entered the record into the SalesHistory table has not been committed, I can undo it. I'll roll back the transaction by issuing the following statement:&lt;/p&gt;&lt;pre style="margin-top: 0px; margin-bottom: 10px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-family: consolas, 'Courier New', courier, monospace; vertical-align: baseline; white-space: pre-wrap; font: normal normal normal 1em/normal 'andale mono', 'lucida console', monospace; color: rgb(52, 82, 32); word-wrap: break-word; "&gt;ROLLBACK TRANSACTION&lt;/pre&gt;&lt;p style="margin-top: 0px; margin-right: 0px; margin-bottom: 15px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; vertical-align: baseline; "&gt;This statement removes the record from the SalesHistory table that I previously inserted. Now I run the same SELECT statement that I ran earlier:&lt;/p&gt;&lt;pre style="margin-top: 0px; margin-bottom: 10px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; font-family: consolas, 'Courier New', courier, monospace; vertical-align: baseline; white-space: pre-wrap; font: normal normal normal 1em/normal 'andale mono', 'lucida console', monospace; color: rgb(52, 82, 32); word-wrap: break-word; "&gt;SELECT COUNT(*) FROM SalesHistory WITH(NOLOCK)&lt;/pre&gt;&lt;p style="margin-top: 0px; margin-right: 0px; margin-bottom: 15px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; vertical-align: baseline; "&gt;This time the record count returned is 300. My first query read a record that was not yet committed -- this is a dirty read.&lt;/p&gt;&lt;p style="margin-top: 0px; margin-right: 0px; margin-bottom: 15px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; vertical-align: baseline; "&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="margin-top: 0px; margin-right: 0px; margin-bottom: 15px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; vertical-align: baseline; "&gt;&lt;br /&gt;&lt;/p&gt; &lt;img src="http://geekswithblogs.net/TomStickel/aggbug/148566.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/gwO3wPkNlW0" height="1" width="1"/&gt;</description><dc:creator>TomStickel</dc:creator><feedburner:origLink>http://geekswithblogs.net/TomStickel/archive/2012/02/02/sql-server-nolock.aspx</feedburner:origLink></item><item><title>Quick Review of Backup tools for SQL Azure</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/cNOk9CUf1Yg/quick-review-of-backup-tools-for-sql-azure.aspx</link><pubDate>Thu, 02 Feb 2012 14:40:19 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/hroggero/archive/2012/02/02/quick-review-of-backup-tools-for-sql-azure.aspx</guid><wfw:comment>http://geekswithblogs.net/hroggero/comments/148565.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/hroggero/comments/commentRss/148565.aspx</wfw:commentRss><comments>http://geekswithblogs.net/hroggero/archive/2012/02/02/quick-review-of-backup-tools-for-sql-azure.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/hroggero/services/trackbacks/148565.aspx</trackback:ping><source url="http://geekswithblogs.net/hroggero/rss.aspx">Quick Review of Backup tools for SQL Azure</source><description>&lt;p&gt;The landscape of SQL Azure backups is changing rapidly.  A few tools are becoming available at no charge and Microsoft is adding capabilities over time. Here a quick update.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;font size="4"&gt;Microsoft Tools&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Microsoft offers two primary backup mechanisms so far:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Export/Import feature available on the Azure Management portal&lt;/li&gt;&lt;li&gt;The COPY operation as part of its T-SQL CREATE DATABASE statement&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;These mechanisms do not offer a scheduling component and do not work together. To obtain a transactionally consistent backup, you first need to perform the COPY operation manually, then run the Export function.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;font size="4"&gt;Free Tools&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;You have other tools on the market that are a bit more comprehensive at no charge. Here are a few:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Enzo Backup for SQL Azure (Standard Edition)&lt;/li&gt;&lt;li&gt;Red Gate's SQL Azure Backup (backup only; no restore; no cloud backup)&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;These are the only two third-party products available at no charge I am aware of right now. Note that Red Gate's product provides a simple copy operation to a local SQL Server database, not really a backup/restore solution. However it does the job well if you want to get a local copy of your data. Enzo Backup is more comprehensive and offers many more functions, such as a built-in scheduler, cloud backup devices (in Blobs) and a restore capability.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;font size="4"&gt;Paid-For Tools&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Enzo Backup for SQL Azure (Advanced Edition)&lt;/li&gt;&lt;li&gt;SQLAzureBackup (basic command-line BCP wrapper, no cloud backup)&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Regarding the tools you can purchase, SQLAzureBackup is a product you can purchase, although it seems somewhat limited in its capabilities. You can nonetheless use it to export your data locally and restore the database back into SQL Azure. Enzo Backup Advanced Edition is a more powerful flavor of the free version that leverages multithreading for faster operations.&lt;/p&gt;&lt;p&gt;Here is a link to an MSDN article that offers additional information on how to backup SQL Azure: &lt;a href="http://blogs.msdn.com/b/davidmcg/archive/2011/09/29/data-backup-strategies-for-windows-and-sql-azure.aspx"&gt;http://blogs.msdn.com/b/davidmcg/archive/2011/09/29/data-backup-strategies-for-windows-and-sql-azure.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;For the time being Enzo Backup appears to have significantly more capabilities than the other products, and it can be used at no charge by visiting Blue Syntax's website (&lt;a href="http://www.bluesyntax.net"&gt;http://www.bluesyntax.net&lt;/a&gt;). &lt;/p&gt;&lt;p&gt;&lt;font size="2"&gt;[Disclaimer: I am the author of Enzo Backup for SQL Azure;  this blog intends to provide a quick overview of the current tools available on the market; please investigate the tools referenced here and visit the MSDN link provided to make an educated decision]&lt;/font&gt;&lt;/p&gt;&lt;p&gt; &lt;/p&gt; &lt;img src="http://geekswithblogs.net/hroggero/aggbug/148565.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/cNOk9CUf1Yg" height="1" width="1"/&gt;</description><dc:creator>Herve Roggero</dc:creator><feedburner:origLink>http://geekswithblogs.net/hroggero/archive/2012/02/02/quick-review-of-backup-tools-for-sql-azure.aspx</feedburner:origLink></item><item><title>New Direction</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/l4LHPUHZGro/new-direction.aspx</link><pubDate>Thu, 02 Feb 2012 20:19:00 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/TomPepe/archive/2012/02/02/new-direction.aspx</guid><wfw:comment>http://geekswithblogs.net/TomPepe/comments/148564.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/TomPepe/comments/commentRss/148564.aspx</wfw:commentRss><comments>http://geekswithblogs.net/TomPepe/archive/2012/02/02/new-direction.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/TomPepe/services/trackbacks/148564.aspx</trackback:ping><source url="http://geekswithblogs.net/TomPepe/rss.aspx">New Direction</source><description>&lt;p&gt;Because I have moved to a new company, new position, and I am using new technologies this seems as good a time as any to change the focus of this blog.  I have received some commentary to broaden my perspective and I will take this change to change and broaden the scope of my blog.&lt;/p&gt;  &lt;h1&gt;More than just code &lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/TomPepe/Windows-Live-Writer/19582ea7e46b_74C0/clip_image001_2.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: right; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="clip_image001" border="0" hspace="12" alt="clip_image001" align="right" src="http://geekswithblogs.net/images/geekswithblogs_net/TomPepe/Windows-Live-Writer/19582ea7e46b_74C0/clip_image001_thumb.jpg" width="169" height="117" /&gt;&lt;/a&gt;&lt;/h1&gt;  &lt;p&gt;I plan to include all sorts of things I come across in my job like:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;General coding practices and SOLID coding principals &lt;/li&gt;    &lt;li&gt;Interviewing and career advice &lt;/li&gt;    &lt;li&gt;For other things I am passionate about like my Christian faith, exercise and diet, frugal living, landscaping, my wife and son, etc I may start another blog.  I'll link to it if / when I get around to it. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt; &lt;/p&gt;  &lt;h1&gt;Thinking outside the blog &lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/TomPepe/Windows-Live-Writer/19582ea7e46b_74C0/clip_image003_2.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: left; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="clip_image003" border="0" hspace="12" alt="clip_image003" align="left" src="http://geekswithblogs.net/images/geekswithblogs_net/TomPepe/Windows-Live-Writer/19582ea7e46b_74C0/clip_image003_thumb.jpg" width="164" height="102" /&gt;&lt;/a&gt;&lt;/h1&gt;  &lt;p&gt;In response to one reader's comment I should be thinking about the bigger picture.  I assure you that I do but I haven't shared those thoughts on this blog.  But that left my blog entries with very limited relevance.  I still want to provide tips to things I can't find on the web and not just add more stuff to the online pile of opinions.  My blog will still primarily be a place to share recurring issues I encounter in my career and I will I still include code examples if they are novel enough to be of interest.  &lt;/p&gt;  &lt;p&gt;With this entry included :) hold me responsible for providing enough context for my examples to make sense and clearly articulate their relevance.&lt;/p&gt;  &lt;h1&gt; &lt;/h1&gt;  &lt;h1&gt;Community&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/TomPepe/Windows-Live-Writer/19582ea7e46b_74C0/clip_image005_2.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: left; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="clip_image005" border="0" hspace="12" alt="clip_image005" align="left" src="http://geekswithblogs.net/images/geekswithblogs_net/TomPepe/Windows-Live-Writer/19582ea7e46b_74C0/clip_image005_thumb.jpg" width="92" height="96" /&gt;&lt;/a&gt;&lt;/h1&gt;  &lt;p&gt;I haven't engaged with other bloggers and the web like I should in this blog.  I occasionally contribute to other blogs and contact other bloggers.  Sometimes I post to forums, sometimes I email authors, bloggers, and others.  I will link to those where possible and where approval is given.  For instance, &lt;a href="http://damonoverboe.org/"&gt;Damon Overboe&lt;/a&gt; is a friend of mine with great blog on similar topics that I plan to cover and I get my images from &lt;a href="http://usasearch.gov/images?locale=en&amp;amp;m=false"&gt;http://usasearch.gov/images?locale=en&amp;amp;m=false&lt;/a&gt; so I can use images without fear of breaking copyright laws.&lt;/p&gt;  &lt;h1&gt; &lt;/h1&gt;  &lt;h1&gt; &lt;/h1&gt;  &lt;h1&gt;Regularity  &lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/TomPepe/Windows-Live-Writer/19582ea7e46b_74C0/clip_image007_2.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="clip_image007" border="0" hspace="12" alt="clip_image007" src="http://geekswithblogs.net/images/geekswithblogs_net/TomPepe/Windows-Live-Writer/19582ea7e46b_74C0/clip_image007_thumb.jpg" width="244" height="34" /&gt;&lt;/a&gt; &lt;/h1&gt;  &lt;p&gt;I will start posting on a regular basis.  This is in part due to the fact that I have been studying for a master’s degree which I now proudly hold.  That should free up some time for a blog entry once a month or once every two weeks, I'll keep you posted.  I'll try not to say much unless I have something relevant to say (present blog entry not included).&lt;/p&gt;  &lt;h1&gt;That's it&lt;/h1&gt;  &lt;p&gt;It's a new year, I have a new job, a new baby boy, and a new blog.  I hope you like the blog.&lt;/p&gt;  &lt;p&gt;-T&lt;/p&gt; &lt;img src="http://geekswithblogs.net/TomPepe/aggbug/148564.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/l4LHPUHZGro" height="1" width="1"/&gt;</description><dc:creator>tom</dc:creator><feedburner:origLink>http://geekswithblogs.net/TomPepe/archive/2012/02/02/new-direction.aspx</feedburner:origLink></item><item><title>C# to C++ &amp;ndash; A Somewhat Short Guide</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/ka00uUkyUWo/c-to-c-ndash-a-somewhat-short-guide.aspx</link><pubDate>Thu, 02 Feb 2012 13:45:11 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/mikebmcl/archive/2012/02/02/c-to-c-ndash-a-somewhat-short-guide.aspx</guid><wfw:comment>http://geekswithblogs.net/mikebmcl/comments/148562.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/mikebmcl/comments/commentRss/148562.aspx</wfw:commentRss><comments>http://geekswithblogs.net/mikebmcl/archive/2012/02/02/c-to-c-ndash-a-somewhat-short-guide.aspx#comment</comments><slash:comments>3</slash:comments><trackback:ping>http://geekswithblogs.net/mikebmcl/services/trackbacks/148562.aspx</trackback:ping><source url="http://geekswithblogs.net/mikebmcl/rss.aspx">C# to C++ &amp;ndash; A Somewhat Short Guide</source><description>&lt;p&gt;Last updated: 2012-02-02&lt;/p&gt;  &lt;p&gt;This is a big post – over 12200 words – and so I’ve decided to make it available as a PDF download, which you can get here:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.bobtacoindustries.com/Content/Devs/CsToCpp-ASomewhatShortGuide.pdf"&gt;http://www.bobtacoindustries.com/Content/Devs/CsToCpp-ASomewhatShortGuide.pdf&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;It has bookmarks for easier navigation along with a Table of Contents and page numbers.&lt;/p&gt;  &lt;p&gt;I expect that I will revise this from time to time and welcome any suggestions, feedback, and (especially) corrections. If so I will update the Last updated field at the top and will create a revised PDF as well. I hope this proves useful.&lt;/p&gt;  &lt;p&gt;For those interested, the sessions from the GoingNative 2012 conference will be streaming live today (Feb 2) and tomorrow on Channel 9: &lt;a title="http://channel9.msdn.com/posts/Announcing-the-GoingNative-2012-Full-Schedule" href="http://channel9.msdn.com/posts/Announcing-the-GoingNative-2012-Full-Schedule"&gt;http://channel9.msdn.com/posts/Announcing-the-GoingNative-2012-Full-Schedule&lt;/a&gt; . Sessions will also be available for download shortly after the show ends (I’d guess within 24-48 hours, but that’s just a guess). It looks fascinating so definitely check it out! (I know I will be watching it.)&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;h1 style="line-height: 28pt; margin: 0in 0in 0pt"&gt;&lt;font color="#000000"&gt;Introduction&lt;/font&gt;&lt;/h1&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;This is a somewhat short guide to the important things to know if you are a C# programmer and find yourself needing or wanting to work in C++, for example to create Metro style games for Windows 8 using C++ and DirectX. In fact, this guide is written with that goal in mind so it's not necessarily a universal guide for all platforms and purposes.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;This guide is also going to be fairly utilitarian and pithy, with code standing in place of elaborate commentary. I'm expecting that you know how to program already and have a good understanding of C# (or of some sort of imperative, object-oriented language at any rate).&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;I'm also assuming you are fairly handy with navigating the MSDN library. Its Bing search box is really awesome; if you haven't used it before, do give it a try. I like how the search is tailored to not just MSDN but also other great programmer sites like the Stack Exchange sites, CodeProject, CodePlex, etc.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;I'm sprinkling a fair bit of code throughout as I said above. This is both to show you a (pseudo) real example of something and also to help illustrate words with code so that each will hopefully help to clarify the other.&lt;/font&gt;&lt;/p&gt;  &lt;h1 style="line-height: 28pt; margin: 0in 0in 0pt"&gt;&lt;a name="_Toc315931776"&gt;&lt;font color="#000000"&gt;Simple test programs&lt;/font&gt;&lt;/a&gt;&lt;/h1&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;I highly encourage you to create a simple scratch program that you can mess around with. I do this all the time with various languages and frameworks in Visual Studio. I normally append "Sandbox" to the name so that I know it's something I am just playing around in. I tend to comment code out when done with it rather than delete it since I may want to look at it again in the future (perhaps to see a specific syntax that I puzzled out but haven't used in a while or maybe for some technique I was trying that I now want to use in a real project). If the code in question might be a bit confusing later on, I try to add some comments that will help me understand it. It's helpful to use a descriptive naming scheme for variables, classes, and functions (though I admit that I'm not too good about this in my sandbox apps). If a project gets too full or busy then I might use regions to hide a section of code or I might create another project or even another solution that will serve as a clean slate.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;While developing this guide I've mostly been working in a project called CppSandbox developed in VS 2010 Ultimate and checked in VC++ 2010 Express. It's just a C++ Win32 Console Application (without ATL or MFC but with a precompiled header). This has let me test things like thread local storage duration. The C++/CX stuff can only be tested on using the VS11 preview on Windows Developer Preview (and, presumably, the next preview release of Windows 8, which is due towards the end of this month (Feb 2012)). For everything else you can use either VS 2010 Professional or greater or VC++ 2010 Express (available free here: &lt;/font&gt;&lt;a href="http://www.microsoft.com/visualstudio/en-us/products/2010-editions/visual-cpp-express"&gt;&lt;font color="#0000ff"&gt;&lt;u&gt;http://www.microsoft.com/visualstudio/en-us/products/2010-editions/visual-cpp-express&lt;/u&gt;&lt;/font&gt;&lt;/a&gt;&lt;font color="#000000"&gt; ).&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;The major feature not present in VC++ 2010 is the ability to compile 64-bit applications. I'm not going to be touching on that here and I don't know whether that will be possible with the free versions of VS11 when they are released. I did do some tests with it in VS 2010 Ultimate just so I could examine the ASM it generates (out of curiosity). The main reason I developed in VS 2010 Ultimate is that it lets me work on multi-language projects at the same time such that I could write out a bit of test code in C# in a Console project and then duplicate it in C++. That wound up not being a big factor since I changed tactics but I already had the sandbox project so I just kept working with it.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;That's enough chit-chat, I think. Let's get down to business!&lt;/font&gt;&lt;/p&gt;  &lt;h1 style="line-height: 28pt; margin: 0in 0in 0pt"&gt;&lt;a name="_Toc315931777"&gt;&lt;font color="#000000"&gt;Fundamental types&lt;/font&gt;&lt;/a&gt;&lt;/h1&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;The C++ standard only requires that the integral types and floating point types each be at least as large as their next smallest counterpart. So when is a long not a long? When one long is a C# long (8 bytes) and the other is a Visual C++ long (4 bytes – same as an int). A Visual C++ 'long long' is 8 bytes. Microsoft has a table of fundamental sizes here:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/cc953fe1.aspx"&gt;&lt;font color="#0000ff"&gt;&lt;u&gt;http://msdn.microsoft.com/en-us/library/cc953fe1.aspx&lt;/u&gt;&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Note that there are Microsoft-specific integral types that specify sizes exactly, such as __int32 (a 32-bit integer, same as a C# int), __int64 (a 64-bit integer, same as a C# long), etc.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;The float and double types are the same sizes as in C# (32-bit and 64-bit, respectively). There's a type called 'long double' but in Visual C++ it is the same as a double so I don't recommend using it to avoid confusion.&lt;/font&gt;&lt;/p&gt;  &lt;h1 style="line-height: 28pt; margin: 0in 0in 0pt"&gt;&lt;a name="_Toc315931778"&gt;&lt;font color="#000000"&gt;Objects – class vs. struct vs. union&lt;/font&gt;&lt;/a&gt;&lt;/h1&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;The difference between a class and a struct is simply that a struct's members default to public whereas a class's members default to private. That's it. They are otherwise the same.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;That said, typically you will see programmers use classes for elaborate types (combinations of data and functions) and structs for simple data-only types. Normally this is a stylistic choice that represents the non-object-oriented origins of struct in C and that makes it easy to quickly differentiate between a simple data container versus a full-blown object by looking to see if it's a struct or a class. I recommend following this style.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;In WinRT programming, a struct that is public can only have data members (no properties or functions) and those data members can only be made up of fundamental data types and other public structs (which, of course, have the same data-only, fundamental &amp;amp; public structs only restrictions).&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;As a terminology note, you'll commonly see structs that only have data members referred to as plain old data ("POD") structs.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;You will sometimes see the friend keyword used within a class definition. It is followed by either a class name or a function declaration. What this does is give the class/function specified access to the non-public member data and functions of the class. It's probably not a great thing to use very often (if ever), but if you decide you need it for some reason and that refactoring your code would be impractical, it's there.&lt;/font&gt;&lt;/p&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931779"&gt;&lt;font color="#000000"&gt;Multiple inheritance&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;C++ classes can inherit from multiple base classes. This is called multiple inheritance. I strongly recommend that you only use multiple inheritance as a workaround for the fact that C++ has no separate "interface" type. Design classes in the same way that you would in C# (i.e. with either no (explicit) base class or else with just one base class). When you want an interface, create an abstract class and inherit from that as well. To avoid trouble, have your interface classes only define pure virtual member functions. The syntax for such is to follow its parameter list with '= 0'. For example:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpFirst"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;class IToString&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;public:&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// Require inheriting classes to define a ToString member function&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;virtual std::wstring ToString() = 0;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;};&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;class SomeBaseClass&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;: virtual public IToString&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;public:&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;SomeBaseClass()&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;        &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;: m_count()&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;~SomeBaseClass() { }&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;std::wstring ToString() { return std::wstring(L"SomeBaseClass"); }&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;void AddToCount(int &lt;i&gt;val&lt;/i&gt;) { m_count += &lt;i&gt;val&lt;/i&gt;; };&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;int GetCount() { return m_count; }&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;protected:&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;int m_count;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;};&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;class SomeClass&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;: public SomeBaseClass&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;, virtual public IToString&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;public:&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;SomeClass() { }&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;~SomeClass() { }&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;void SubtractFromCount(int &lt;i&gt;val&lt;/i&gt;) { m_count -= &lt;i&gt;val&lt;/i&gt;; }&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;std::wstring BaseToString() { return SomeBaseClass::ToString(); }&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;std::wstring ToString() override { return std::wstring(L"SomeClass"); }&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCodeCxSpLast"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;};&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;You'll notice that we marked the inheritance from the "interface" class with the virtual keyword when inheriting from it. This prevents a bizarre, battle of the inheritances from playing out. It'll compile without it (maybe) and if so likely even work right without it. However if you had data members in the class that is inherited from twice, it would wind up creating two copies of those data members (thereby making the class take up more room in memory).&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Also, without marking the inheritance virtual, you must implement ToString in SomeClass rather than just inheriting it from SomeBaseClass. Otherwise you would get a compile error complaining that SomeClass is an abstract class wherever you tried to instantiate it and errors about being unable to pick between SomeBaseClass::ToString and IToString::ToString whenever you tried to call SomeClass's ToString member function. So the compiler issues warnings to you if you don't have those virtual markers because it's not sure that you really wanted two implementations of IToString.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Note that if you left off the override keyword from the definition of ToString in SomeClass, you would get a compiler warning about how SomeBaseClass already provides you with an implementation of IToString::ToString. By telling it we want to override any other definitions we make it clear that we want to override it and didn't just accidentally add it.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;SomeClass's BaseToString member function shows the syntax you use when you want to call a member function of a class you've inherited from. It's the same syntax you'd use if you were calling a static member function, but the compiler knows that it's not a static and makes sure to translate things correctly so that it'll call SomeBaseClass's ToString when you use that syntax inside a derived class like that.&lt;/font&gt;&lt;/p&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931780"&gt;&lt;font color="#000000"&gt;Union&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;A union is a data type that can't inherit from other classes or be a base class for other classes to inherit from. (In the last sentence, class refers to 'class', 'struct', and 'union' which are considered to be mandatory class-keys that specify the particular behavior of a class type). A union is made up of data members and (optionally) functions. Only one of its non-static data members can be active. This lets it fill several different roles at different times. It can also open the door to potential micro-optimizations.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;There's a lot more that could be said about unions, but I have no intention of explaining them here. Unions are complicated to explain and I don't personally find them helpful. I see them as being part archaic and part advanced. You can get by just fine without them and if you really need to know more you can read up about them elsewhere. If there's sufficient desire, I'll reconsider my decision and perhaps either add more about them here or else write about them elsewhere or at least link to someone who has.&lt;/font&gt;&lt;/p&gt;  &lt;h1 style="line-height: 28pt; margin: 0in 0in 0pt"&gt;&lt;a name="_Toc315931781"&gt;&lt;font color="#000000"&gt;C++ constructors&lt;/font&gt;&lt;/a&gt;&lt;/h1&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;C++ has four types of constructors: default, parameterized, copy, and move.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;A default constructor is a constructor that can be called without an argument. Note that this includes a constructor that has parameters, provided that all the parameters have been assigned default values. There can only be one of these.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;A parameterized constructor is a constructor which has at least one parameter without a default value.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;A copy constructor is a special type of constructor which creates a copy of an existing class instance. There are two potential types of these (one const, one non-const) but normally you only write a const version. The compiler will typically implicitly create one for you if you don't (there are specific rules governing this). I always find it better to be explicit rather than rely on rules I would have to look up and read carefully.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;A move constructor is a special type of constructor which creates a new class instance that moves the data contents of another class into itself (thereby taking over the data). They have various uses, but an easy to understand example is where you have a std::vector&amp;lt;SomeClass&amp;gt; (the C# equivalent is List&amp;lt;SomeClass&amp;gt;). If you do an insert operation and there is no move constructor (think a List&amp;lt;T&amp;gt; where T is a value type) then every object that has to be moved must be copied. That churns a lot of memory and wastes a lot of time. If there is a move constructor then everything goes much faster since the data can just be moved without copying. There are some instances where the compiler will implicitly create a move constructor for you. You should be explicit about this since you could easily wind up accidentally triggering a circumstance that causes one to suddenly be created/not created whereas previously it was not created/created (i.e. it flips behavior). You could in theory have both a const and a non-const move constructor, but a const one makes no sense at all.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;With both copy and move constructors, if you provide one you should also provide the equivalent assignment operator overload.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;We'll examine a class with all types of constructors now.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;The following is the header file of a class named SomeClass. It includes the definition as well, though normally you would put any non-inline member function definitions in a separate CPP file. The class doesn't do anything of value but it does demonstrate a variety of things, such as all constructor types, a destructor, the use of checked iterators to safely copy data, and the use of some helpful Standard Library functions such as swap, fill_n, and copy. It also demonstrates both a static member function and an instance member function (one that is marked const (see Const-Correctness below)).&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpFirst"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;#pragma once&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;#include &amp;lt;string&amp;gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;#include &amp;lt;algorithm&amp;gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;#include &amp;lt;iterator&amp;gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;using namespace std;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;using namespace stdext;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;class SomeClass&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;public:&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// Default constructor with default value parameter.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;SomeClass(const wchar_t* someStr = L"Hello");&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// Copy constructor.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;SomeClass(const SomeClass&amp;amp;);&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// Copy assignment operator.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;SomeClass&amp;amp; operator=(const SomeClass&amp;amp;);&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// Move constructor.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;SomeClass(SomeClass&amp;amp;&amp;amp;);&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// Move assignment operator.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;SomeClass&amp;amp; operator=(SomeClass&amp;amp;&amp;amp;);&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// Constructor with parameter.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;SomeClass(int, const wchar_t* someStr = L"Hello");&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// Destructor.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;~SomeClass(void);&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// Declaration of a static member function.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;static void PrintInt(int);&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// Declaration of an instance member function with const.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;void PrintSomeStr(void) const;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// Declaration of a public member variable. Not per se a&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt; &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;// good idea.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;std::wstring&lt;span style="mso-tab-count: 1"&gt;     &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;                       &lt;/span&gt;m_someStr;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;private:&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;int&lt;span style="mso-spacerun: yes"&gt;                                &lt;/span&gt;m_count;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;int&lt;span style="mso-spacerun: yes"&gt;                                &lt;/span&gt;m_place;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// This is going to be a dynamically allocated array&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// so we stick it inside a unique_ptr to ensure that&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// the memory allocated for it is freed.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;std::unique_ptr&amp;lt; long long[] &amp;gt;&lt;span style="mso-spacerun: yes"&gt;     &lt;/span&gt;m_data;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;};&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;// Default constructor definition. Note that we do not&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;// restate the assignment of a default value to someStr here in the &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;// definition. It knows about it from the declaration above and will &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;// use it if no value is provided for someStr when calling this &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;// constructor.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;inline SomeClass::SomeClass(const wchar_t* someStr)&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;: m_someStr(someStr)&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;, m_count(10)&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;, m_place(0)&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;, m_data(new long long[m_count])&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;std::wcout &amp;lt;&amp;lt; L"Constructing..." &amp;lt;&amp;lt; endl;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;std::fill_n(checked_array_iterator&amp;lt;long long*&amp;gt;(this-&amp;gt;m_data.get(), m_count), m_count, 0);&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;// Copy constructor definition.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;inline SomeClass::SomeClass(const SomeClass&amp;amp; other)&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;: m_someStr(other.m_someStr)&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;, m_count(other.m_count)&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;, m_place(other.m_place)&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;, m_data(new long long[other.m_count])&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;std::wcout &amp;lt;&amp;lt; L"Copy Constructing..." &amp;lt;&amp;lt; endl;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;std::copy(other.m_data.get(), other.m_data.get() + other.m_count, checked_array_iterator&amp;lt;long long*&amp;gt;(this-&amp;gt;m_data.get(), this-&amp;gt;m_count));&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;// Copy assignment operator definition.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;inline SomeClass&amp;amp; SomeClass::operator=(const SomeClass&amp;amp; other)&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;std::wcout &amp;lt;&amp;lt; L"Copy assignment..." &amp;lt;&amp;lt; endl;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;this-&amp;gt;m_someStr = other.m_someStr;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;this-&amp;gt;m_count = other.m_count;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;this-&amp;gt;m_place = other.m_place;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;if (this-&amp;gt;m_data != nullptr)&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;        &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;this-&amp;gt;m_data = nullptr;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;this-&amp;gt;m_data = std::unique_ptr&amp;lt;long long[]&amp;gt;(new long long[other.m_count]);&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;std::copy(other.m_data.get(), other.m_data.get() + other.m_count, checked_array_iterator&amp;lt;long long*&amp;gt;(this-&amp;gt;m_data.get(), this-&amp;gt;m_count));&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;return *this;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;// Move constructor definition.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;inline SomeClass::SomeClass(SomeClass&amp;amp;&amp;amp; other)&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;: m_someStr(other.m_someStr)&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;, m_count(other.m_count)&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;, m_place(other.m_place)&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;, m_data(other.m_data.release())&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;std::wcout &amp;lt;&amp;lt; L"Move Constructing..." &amp;lt;&amp;lt; endl;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;// Move assignment operator definition.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;inline SomeClass&amp;amp; SomeClass::operator=(SomeClass&amp;amp;&amp;amp; other)&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;std::wcout &amp;lt;&amp;lt; L"Move assignment..." &amp;lt;&amp;lt; endl;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;std::swap(this-&amp;gt;m_someStr, other.m_someStr);&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;std::swap(this-&amp;gt;m_count, other.m_count);&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;std::swap(this-&amp;gt;m_place, other.m_place);&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;std::swap(this-&amp;gt;m_data, other.m_data);&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt; &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;return *this;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;// Parameterized constructor definition. Note that we do not&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;// restate the assignment of a default value here in the definition.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;// It knows about it from the declaration above and will use it if&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;// no value is provided for someStr when calling this constructor.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;inline SomeClass::SomeClass(int count, const wchar_t* someStr)&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;: m_someStr(someStr)&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;, m_count(count)&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;, m_place()&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;, m_data(new long long[m_count])&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;std::wcout &amp;lt;&amp;lt; L"Constructing with parameter..." &amp;lt;&amp;lt; endl;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt; &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;for (int i = 0; i &amp;lt; m_count; i++)&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;        &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;m_data[i] = (1 * i) + 5;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;inline SomeClass::~SomeClass(void)&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;std::wcout &amp;lt;&amp;lt; L"Destroying..." &amp;lt;&amp;lt; endl;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;//// This isn't necessary since when the object is destroyed&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;//// the unique_ptr will go out of scope and thus it will be&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;//// destroyed too, thereby freeing any dynamic memory that was&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;//// allocated to the array (if any).&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;//if (this-&amp;gt;m_data != nullptr)&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;//{&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;//&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;this-&amp;gt;m_data = nullptr;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;//}&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;// Note that we don't have the static qualifier here.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;void SomeClass::PrintInt(int x)&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;std::wcout &amp;lt;&amp;lt; L"Printing out the specified integer: " &amp;lt;&amp;lt; x &amp;lt;&amp;lt; endl;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;// But we do need to specify const again here.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;void SomeClass::PrintSomeStr(void) const&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;wcout &amp;lt;&amp;lt; L"Printing out m_someStr: " &amp;lt;&amp;lt; m_someStr &amp;lt;&amp;lt; endl;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// If we tried to change any of the member data in this method&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// we would get a compile-time error (and an IntelliSense&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// warning) since this member function is marked const.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCodeCxSpLast"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Hopefully the above was enlightening. Terms like move constructor and copy constructor are thrown around a lot in C++ so having an example to look at should prove helpful. My goal was not to produce a class that is useful, but one where you could see the declaration patterns of these constructor types and see some ways to implement them (along with the required assignment operator overloads) by using Standard Library functions.&lt;/font&gt;&lt;/p&gt;  &lt;h1 style="line-height: 28pt; margin: 0in 0in 0pt"&gt;&lt;a name="_Toc315931782"&gt;&lt;font color="#000000"&gt;Storage duration&lt;/font&gt;&lt;/a&gt;&lt;/h1&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;There are four possible storage durations: static, thread, automatic, and dynamic.&lt;/font&gt;&lt;/p&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931783"&gt;&lt;font color="#000000"&gt;Automatic duration&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Within a block (one or more lines of code within curly braces), a variable declared&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-tab-count: 1"&gt;            &lt;/span&gt;a) either with no duration keyword or with the 'register' keyword; AND&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-tab-count: 1"&gt;            &lt;/span&gt;b) without using the 'new' operator&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;has automatic scope. This means that the variable is created at the point at which it is declared is destroyed when the program exits the block. Note that each time the declaration statement is executed, the variable will be initialized. In the following:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpFirst"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;for (int i = 0; i &amp;lt; 10; ++i)&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-tab-count: 1"&gt;&lt;font style="font-size: 11pt"&gt;     &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;SomeClass someClass;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-tab-count: 1"&gt;&lt;font style="font-size: 11pt"&gt;     &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;someClass.DoSomething(L"With Some String");&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCodeCxSpLast"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;you'll run the SomeClass constructor and destructor ten times (in the order constructor - destructor - constructor - destructor - ... since the current SomeClass instance will go out of scope each time before the condition (i &amp;lt; 10) is evaluated).&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;(Note that the 'auto' keyword used to be a way of explicitly selecting automatic storage duration. It's been repurposed to function the same as the 'var' keyword in C# as of C++11 (this new meaning of auto is the default in VS2010 and later). If you try to compile something using the old meaning of auto you'll get a compiler error since auto as a type specifier must be the only type specifier. If you've got a lot of legacy code you can disable the new behavior (look it up on MSDN); otherwise stick with the new meaning of auto.)&lt;/font&gt;&lt;/p&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931784"&gt;&lt;font color="#000000"&gt;Dynamic duration&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Dynamic duration is what you get when you use either the new operator or the new [ ] operator. While it is fine and even necessary to use dynamic duration objects, you should &lt;i style="mso-bidi-font-style: normal"&gt;never&lt;/i&gt; allocate them outside of either a shared_ptr or a unique_ptr (depending on which suits your needs). By putting dynamic duration objects inside of one of these, you guarantee that when the unique_ptr or the last shared_ptr that contains the memory goes out of scope, the memory will be properly freed with the correct version of delete (delete or delete [ ]) such that it won't leak. If you go around playing with naked dynamic duration, you're just asking for a memory leak. For more about this see the next topic.&lt;/font&gt;&lt;/p&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931785"&gt;&lt;font color="#000000"&gt;Thread duration&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;It is also possible to declare certain types of variables as having thread duration. This is similar to static duration except that instead of lasting the life of the program (as we'll see shortly), these variables are local to each thread and the thread's copy exists for the duration of the thread. Note that the thread's copy is initialized when the thread is started and does not inherit its value from the thread that started it.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;C++11 has added a new keyword to declare this ('thread_local') however this keyword is not yet recognized such that you need to use the Microsoft __declspec(thread) syntax to obtain this behavior. For more information, see: &lt;/font&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/9w1sdazb.aspx"&gt;&lt;font color="#0000ff"&gt;&lt;u&gt;http://msdn.microsoft.com/en-us/library/9w1sdazb.aspx&lt;/u&gt;&lt;/font&gt;&lt;/a&gt;&lt;font color="#000000"&gt; . See below for a general overview of initialization.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Since this is a bit weird, I created a small sample to make sure I knew what was going on. It's a Win32 Console App tested in VC++ 2010 Express.&lt;/font&gt;&lt;/p&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931786"&gt;&lt;font color="#000000"&gt;Static duration&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;We finish up with static duration. Primarily because static duration is what you get when none of the other durations apply. You can ask for it explicitly with the static keyword.&lt;/font&gt;&lt;/p&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931787"&gt;&lt;font color="#000000"&gt;Initialization of thread and static duration objects&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;The details of exactly what happens during initialization of static and thread duration objects are complicated. Everything will be initialized before you need it and will exist until the end of the program/thread. If you need to rely on something more complex than this, you’re probably doing something wrong. At any rate, you'll need to sit down and read the C++ standard along with the compiler's documentation to figure out what's going on when exactly. Some of the initialization behavior is mandatory, but a lot of it is "implementation defined", meaning you need to read the compiler's documentation (i.e. the relevant MSDN pages).&lt;/font&gt;&lt;/p&gt;  &lt;h1 style="line-height: 28pt; margin: 0in 0in 0pt"&gt;&lt;a name="_Toc315931788"&gt;&lt;font color="#000000"&gt;Unwrapped 'new' keywords are dangerous; shared_ptr, unique_ptr, and weak_ptr&lt;/font&gt;&lt;/a&gt;&lt;/h1&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;If you've worked in a .NET (or other garbage collected) language for a while, you're likely very used to using the 'new' keyword (or its equivalent in your language of choice). Well, in C++ the 'new' keyword is an easy way to create a memory leak. Thankfully, modern C++ makes it really easy to avoid this.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;First, if you have a class with a default constructor, then when you declare it, it automatically constructs itself and when it goes out of scope it is automatically destroyed then and there. We discussed this earlier in automatic storage duration.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Next, the language provides two constructs that make it easy to allocate memory and ensure that it is properly freed: shared_ptr and unique_ptr. A shared_ptr is an automatically reference counted container that holds a pointer type (including dynamic arrays such as "new float[50]"). One or more shared_ptrs can exist for the same underlying pointer, hence the name.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Another object is the unique_ptr. You should use this in place of raw pointers except when you need multiple pointers to the same dynamic data (in which case use shared_ptr). Using a unique_ptr ensures that the memory owned by it will be freed when the unique_ptr itself is destroyed (e.g. by going out of scope, via a destructor, or via stack unwinding during an exception).&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;The last object to consider here is weak_ptr. The weak_ptr exists solely to solve the problem of circular references. If two objects hold shared_ptr references to each other (or if such a thing happens in the course of, say, a doubly-linked list) then shared_ptr's internal reference count can never drop to zero and so the objects will never be destroyed. For such a situation, make one of the references a weak_ptr instead. Weak_ptr is essentially a shared_ptr that doesn't increase the reference count. If you need to use the weak_ptr to access the resource, call its lock function to get a shared_ptr of the resource and then use that. If the object was destroyed before you could get it with lock, you will get back an empty shared_ptr.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;The above types are all in the C++ Standard Library's memory header file, which you include as so:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCode"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;#include &amp;lt;memory&amp;gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Notice that there is no ".h" at the end there. That's the way all of the standard library's headers are. If you're curious as to why, see: &lt;/font&gt;&lt;a href="http://stackoverflow.com/questions/441568/when-can-you-omit-the-file-extension-in-an-include-directive/441683#441683"&gt;&lt;font color="#0000ff"&gt;&lt;u&gt;http://stackoverflow.com/questions/441568/when-can-you-omit-the-file-extension-in-an-include-directive/441683#441683&lt;/u&gt;&lt;/font&gt;&lt;/a&gt;&lt;font color="#000000"&gt; .&lt;/font&gt;&lt;/p&gt;  &lt;h1 style="line-height: 28pt; margin: 0in 0in 0pt"&gt;&lt;a name="_Toc315931789"&gt;&lt;font color="#000000"&gt;RAII - Resource Acquisition Is Initialization&lt;/font&gt;&lt;/a&gt;&lt;/h1&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;RAII is a design pattern that, when done properly, enables C++ code to successfully use exceptions without resource leaks. Since C++ doesn't have a GC the way C# does, you need to be careful to ensure that allocated resources are freed. You also need to be sure that critical sections (the equivalent of a lock statement in .NET) and other multi-threaded synchronization mechanisms are properly released after being acquired.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;RAII works because of this: when an exception occurs, the stack is unwound and the destructors of any fully constructed objects on the stack are run. The key part is "fully constructed"; if you get an exception in the midst of a constructor (e.g. an allocation failure or a bad cast) then since the object isn't fully constructed, its destructor will not run. This is why you always put dynamic allocations inside of unique_ptr or shared_ptr. Those each become fully constructed objects (assuming the allocation succeeds) such that even if the constructor for the object you are creating fails further in, those resources will still be freed by the shared_ptr/unique_ptr destructor. Indeed that's exactly where the name comes from. Resource acquisition (e.g. a successful allocation of a new array of integers) is initialization (the allocation happens within the confines of a shared_ptr or unique_ptr constructor and is the only thing that could fail such that the object will be initialized assuming the allocation succeeds (and if it doesn't then the memory was never acquired and thus cannot be leaked)).&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;RAII isn't only about shared_ptr and unique_ptr, of course. It also applies to classes that represent, e.g., file I/O where the acquisition is the opening of the file and the destructor ensures that the file is properly closed. Indeed this is a particularly good example since you only need to worry about getting that code right just the once (when you write the class) rather than again and again (which is what you would need to do if you couldn't use this and instead had to write the close logic every place that you needed to do file I/O).&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;So remember RAII and use it whenever dealing with a resource that, when acquired, must be freed. (A critical section is another good candidate; successfully getting the enter into the critical section is the acquisition and the destructor would then make sure to issue the leave).&lt;/font&gt;&lt;/p&gt;  &lt;h1 style="line-height: 28pt; margin: 0in 0in 0pt"&gt;&lt;a name="_Toc315931790"&gt;&lt;font color="#000000"&gt;Const-correctness&lt;/font&gt;&lt;/a&gt;&lt;/h1&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Const-correctness refers to using the const keyword to decorate both parameters and functions so that the presence or absence of the const keyword properly conveys any potential side effects. The const keyword has several uses in C++. For the first three uses, imagine we have the following variable:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpFirst"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;int someInt = 0;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCodeCxSpLast"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;int someOtherInt = 0;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931791"&gt;&lt;font color="#000000"&gt;Const pointer&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpFirst"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;int* const someConstPointer = &amp;amp;someInt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;//someConstPointer = &amp;amp;someInt; // illegal&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCodeCxSpLast"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;*someConstPointer = 1; // legal&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;A const pointer is a pointer that cannot be pointed at something else. You can change the value of the data at the location the const pointer points to. So above, attempting to change the target (even to the same target) is illegal and thus won’t compile but changing the value of someInt by dereferencing someConstPointer is perfectly legal and someInt will now have the value 1.&lt;/font&gt;&lt;/p&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931792"&gt;&lt;font color="#000000"&gt;Pointer to const&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpFirst"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;const int* somePointerToConst = &amp;amp;someInt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;somePointerToConst = &amp;amp;someOtherInt; // legal&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCodeCxSpLast"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;//*somePointerToConst = 1; // illegal&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;A pointer to const is a pointer to a value that you cannot change via the pointer. You can make the pointer point to something else, though. So above, you can change the target of somePointerToConst. But you cannot change the value of whatever it is pointing to. At least, not via the pointer; you can still set someInt and someOtherInt to have other values either directly or via a pointer that is not a pointer to const. In other words, the const keyword only affects the pointer, not the underlying data.&lt;/font&gt;&lt;/p&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931793"&gt;&lt;font color="#000000"&gt;Const pointer to const&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpFirst"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;const int* const someConstPointerToConst = &amp;amp;someInt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;//someConstPointerToConst = &amp;amp;someInt; // illegal&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCodeCxSpLast"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;//*someConstPointerToConst = 1; // illegal&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;A const pointer to const is, as you might guess, a pointer to a value that you cannot change via the pointer and that cannot be pointed at something else. It’s an amalgamation of the previous two uses of const.&lt;/font&gt;&lt;/p&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931794"&gt;&lt;font color="#000000"&gt;Constant values&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;You can also use const to specify that a value in general is constant. It need not be a pointer. For instance you could have&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCode"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;const int someConstInt = 10;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;which would create an int that was constant (i.e. unchangeable).&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;If someInt up above was made a const then the declaration of someConstPointer would be illegal since you would be trying to create a pointer to an int, not a pointer to a const int. You would, in effect, be trying to create a pointer that could modify the value of a const int, which by definition has a constant, un-modifiable value.&lt;/font&gt;&lt;/p&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931795"&gt;&lt;font color="#000000"&gt;Constant member functions&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Sometimes you will see a function that is declared and defined with the const keyword after the parentheses in which its parameters (if any) go. For example:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpFirst"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;void PrintCount(void) const&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-tab-count: 1"&gt;&lt;font style="font-size: 11pt"&gt;     &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;wcout &amp;lt;&amp;lt; L"m_count = " &amp;lt;&amp;lt; m_count &amp;lt;&amp;lt; endl;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCodeCxSpLast"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;What this usage of const means is that the function itself will not modify any non-static data members of the class and that it will not call any member function of the class unless they are also marked const.&lt;/font&gt;&lt;/p&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931796"&gt;&lt;font color="#000000"&gt;Mutable data members&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;In certain instances you may wish to be able to change a particular data member even within constant member functions. If you mark the data member with the mutable keyword, e.g.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCode"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;mutable int m_place;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;then that data member can be changed even within member functions marked as const.&lt;/font&gt;&lt;/p&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931797"&gt;&lt;font color="#000000"&gt;Summary and const_cast&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;When you use const to appropriately decorate function parameters, mark class member functions const where appropriate, and mark member data that needs to be changed within member functions that are otherwise marked const, you make it easier to understand the side-effects of your code and make it easier for the compiler to tell you when you are doing something that you told yourself you would not do.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;The point of const-correctness is to prevent bugs and to make it easier to diagnose a bug. If you have some instance data member that is getting a completely wrong value somehow, you can instantly eliminate any functions that are marked const from your search since they should never be changing the instance data (unless it’s marked mutable, in which case you know to look at those const functions too).&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Unfortunately there’s this thing called const_cast&amp;lt;T&amp;gt; which can ruin the party. The const_cast operator can, in many circumstances, eliminate the "const"-ness of something. It also eliminates any volatile and __unaligned qualifiers. You should really, really try to avoid using const_cast if at all possible. But const_cast does have some legitimate uses (otherwise why include it). If you’re interfacing with old code and/or a C language library that doesn’t follow const-correctness and you &lt;b style="mso-bidi-font-weight: normal"&gt;know&lt;/b&gt; that the function you are calling does not modify a variable that it takes as a non-const parameter, then you can mark the parameter to your function that you want to pass as const and then use const_cast to strip the const-ness from it so you can pass it to that function. &lt;/font&gt;&lt;/p&gt;  &lt;h1 style="line-height: 28pt; margin: 0in 0in 0pt"&gt;&lt;a name="_Toc315931798"&gt;&lt;font color="#000000"&gt;Strings&lt;/font&gt;&lt;/a&gt;&lt;/h1&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;If you did any C or C++ programming at some point in the past you might remember these char* things that were used for strings. DO NOT USE THEM. ASCII strings and characters (char* and char) have no place in a modern program. The 80s are over, and it's a new, Unicode world.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Generally you’ll work with std::wstring and/or wchar_t* strings. These are the two types that Windows uses for Unicode strings. If you're getting data from the internet, you may well be getting it as UTF-8. This is not the same as wchar_t* or std::wstring. If you need to deal with UTF-8 data for some reason, look around on the web for suggestions.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Sometimes in Windows you’ll see the _TCHAR macro used. If you’re ever writing code that needs to run on Win 9x, use the _TCHAR system. Since I’m presuming that you’re learning C++ to use current (D3D11) DirectX technologies, most (if not all) of which don’t even exist pre-Vista, I prefer to work directly with wchar_t and std::wstring since that way macros don’t obscure function parameters in IntelliSense.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;C++ recognizes several prefixes for string literals. For wide character strings (the two types above), the prefix L is used. So&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCode"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;const wchar_t* g_helloString = L"Hello World!";&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;creates a new wide character string. The wchar_t type is used for Unicode strings (specifically UTF-16).&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;The standard library’s std::wstring is a container for a wchar_t* string. It provides functions for mutating the string and still lets you access it as a wchar_t* when needed. To create one you would do something like this:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCode"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;std::wstring someHelloStr(L"Hello World!");&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;If you are using std::wstring (which you should for any mutable strings you create) when you need to get the pointer from it to pass to a function that requires a const wchar_t* then use std::wstring’s data function. (If it needs a non-const wchar_t* then ask yourself whether or not you can accomplish what it is proposing with wstring's functionality instead. If not then you need to create a copy of the data using something like the wcscpy_s function (in wchar.h). Beware of memory leaks.)&lt;/font&gt;&lt;/p&gt;  &lt;h1 style="line-height: 28pt; margin: 0in 0in 0pt"&gt;&lt;a name="_Toc315931799"&gt;&lt;font color="#000000"&gt;Prefix increment vs. postfix increment&lt;/font&gt;&lt;/a&gt;&lt;/h1&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;If you're coming from C#, you're likely used to seeing the postfix increment operator (i++) most everywhere.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;In C++ you'll normally see the prefix increment operator (++i) everywhere.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;In both languages the two operators mean the same thing. Postfix means "increment the variable and return the variable's original value (i.e. its value prior to incrementing it)". Prefix means "increment the variable and return the variable's resulting value (i.e. its value after incrementing it)".&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;To do a postfix increment, the compiler needs to allocate a local variable, store the original value in it, perform the increment, and then return the local variable. (Sometimes it can optimize the local variable away, but not always.)&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;To do a prefix increment, the compiler can simply increment the variable and return the result without creating an additional local variable.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;In truth, the compiler is likely going to be able to optimize away your i++ extra temp allocation if you choose to use the postfix increment (VS 2010 SP1, for example, produces identical assembly code for both (no temp) with a typical ‘for (int i =0; i &amp;lt; 10; i++) { … }’ loop even in Debug configuration where it isn’t going hyperactive with optimizations). Cases where it likely can’t are primarily with custom types that actually implement the increment and decrement operators (see &lt;/font&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/f6s9k9ta.aspx"&gt;&lt;font color="#0000ff"&gt;&lt;u&gt;http://msdn.microsoft.com/en-us/library/f6s9k9ta.aspx&lt;/u&gt;&lt;/font&gt;&lt;/a&gt;&lt;font color="#000000"&gt; ) and in cases outside of a ‘for’ loop where you are actually using the value returned by the increment (or decrement) calculation (in which case it definitely can’t since you clearly want either the one value or the other).&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;In general, using the prefix increment mostly seems to serve as notice that you have spent at least some time learning something about C++ programming. &lt;/font&gt;&lt;/p&gt;  &lt;h1 style="line-height: 28pt; margin: 0in 0in 0pt"&gt;&lt;a name="_Toc315931800"&gt;&lt;font color="#000000"&gt;Collection types&lt;/font&gt;&lt;/a&gt;&lt;/h1&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;When coming from C# and .NET, you're undoubtedly familiar with the generic containers in C#. C++ also has these sorts of things but the names and methods may not be familiar (they also work a bit differently). Here are some of the more common mappings for collection types typically used in C# game development.&lt;/font&gt;&lt;/p&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931801"&gt;&lt;font color="#000000"&gt;List&amp;lt;T&amp;gt; equivalent is std::vector&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;The header file include is #include &amp;lt;vector&amp;gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;A typical way to create one is like this:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCode"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;std::vector&amp;lt;SomeType&amp;gt; vec;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;To add an item to the end of the vector, use the push_back member function. To delete the element at the end use pop_back. For example:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpFirst"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;vec.push_back(someItem); // someItem added to the end.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCodeCxSpLast"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;vec.pop_back(); // someItem has now been removed from the end.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;To insert an item somewhere other than at the back, use the insert function, e.g.:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpFirst"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;vec.insert(begin(vec) + 1, someItem); // someItem added to index 1 &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCodeCxSpLast"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;// To add to the beginning, you'd just use begin(vec) without the + 1&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;To remove an item use the erase function, e.g.:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCode"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;vec.erase(begin(vec) + 2); // The item at index 2 will be removed.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Note that unless you are storing a shared_ptr, any external references to the object will become bad since the destructor will run upon erasing it.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;To iterate a vector's items, use code that looks something like this:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpFirst"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;for (auto item = begin(vec); item != end(vec); ++item)&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// Do stuff with item.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCodeCxSpLast"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;span style="mso-no-proof: yes"&gt;&lt;font color="#000000"&gt;If the class you are storing in a vector supports move semantics (i.e. move constructor and move assignment operator) then vector will take advantage of that if you ever need to do an insert or an erase. This can provide a vast speed increase over the copy semantics it would otherwise need to use.&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931802"&gt;&lt;font color="#000000"&gt;Dictionary&amp;lt;TKey,TValue&amp;gt; equivalent is std::unordered_map&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;The header file include is #include &amp;lt;unordered_map&amp;gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;A typical way to create one is like this:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCode"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;std::unordered_map&amp;lt;int, std::wstring&amp;gt; someMap;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;The syntax for adding an item is a little funny (which is why I used real types above rather than made up ones; the key doesn't need to be an int and the value doesn't need to be a wstring). Here's an example of adding an item:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCode"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;someMap.insert(std::unordered_map&amp;lt;int, std::wstring&amp;gt;::value_type(1, std::wstring(L"Hello")));&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Yeah, you need to recapitulate std::unordered_map&amp;lt;TKey,TValue&amp;gt; in order to access its static member value_type (which is an alias for the appropriate constructor of the std::pair type for your map), which you use to insert the key and value. You may want to typedef it so you can shorten it, e.g.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpFirst"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;typedef std::unordered_map&amp;lt;int, std::wstring&amp;gt; IntWstrMap;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;...&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCodeCxSpLast"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;someMap.insert(IntWstrMap::value_type(1, std::wstring(L"Hello");&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;If you try to use insert with a key that already exists, the insert fails. The insert function returns a std::pair with the iterator as the first item and a bool indicating success/failure as the second, so you can do something like:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpFirst"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;if (!someMap.insert(&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;std::unordered_map&amp;lt;int, std::wstring&amp;gt;::value_type(&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;1, std::wstring(L"Hey"))).second)&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;wcout &amp;lt;&amp;lt; L"Insert failed!" &amp;lt;&amp;lt; endl;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCodeCxSpLast"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;You can also insert items by array notation syntax, e.g.:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCode"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;someMap[0] = std::wstring(L" World");&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;If an item exists at that key it will be replaced (unlike with insert). If not, the key will be added and the item inserted there. Note that this is different than in .NET where you would get an exception if you tried to use a key that didn't exist.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;To determine if a key exists, use something like this:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpFirst"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;if (someMap.find(2) == end(someMap))&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;wcout &amp;lt;&amp;lt; L"Key 2 not found. Expected." &amp;lt;&amp;lt; endl;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCodeCxSpLast"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;where '2' is the key you are looking for. You could also store the result of the find, check it against end(someMap), and if it's not that, then you know that you have the item.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Indeed, if you want to retrieve an item only if it exists, this is the correct way to do it:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpFirst"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;auto itemPair = someMap.find(1);&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;if (itemPair != end(someMap))&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;wcout &amp;lt;&amp;lt; itemPair-&amp;gt;second &amp;lt;&amp;lt; endl;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCodeCxSpLast"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;If you tried using array notation, e.g.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCode"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;auto item1Wstr = someMap[1];&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;you would wind up inserting an item at key '1' if no such item existed, with item1Wstr being the empty wstring that was inserted when you tried to get a key that didn't exist (but does now).&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;You can also use the at function to get an element at a specific key. If that key doesn't exist, it will throw an exception of type std::out_of_range. For example:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpFirst"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;std::wstring result;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;try&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;result = someMap.at(1);&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;catch (std::out_of_range e)&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// Do some error handling&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;wcout &amp;lt;&amp;lt; e.what() &amp;lt;&amp;lt; endl;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCodeCxSpLast"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;To remove an item, the easiest way is to just call the erase member function with the key you wish to remove.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCode"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;someMap.erase(1);&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;You can also use iterators to remove specific items or even a range of items, but in practice these may not be worth the bother. The same caution about references going bad applies here as well as it did in vector. Calling erase will trigger the destructor of any object, whether key or value.&lt;/font&gt;&lt;/p&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931803"&gt;&lt;font color="#000000"&gt;SortedDictionary&amp;lt;TKey,TValue&amp;gt; equivalent is std::map&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;This is a binary tree rather than a hash map, (which is what unordered_map is). It's used in pretty much the exact same way as unordered_map so read above for usage info.&lt;/font&gt;&lt;/p&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931804"&gt;&lt;font color="#000000"&gt;Others&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;There are too many collection types to go through them all in such detail. Here are several others you may be interested in:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; text-indent: -0.25in; margin: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpFirst"&gt;&lt;font color="#000000"&gt;&lt;span style="font-family: ; mso-fareast-font-family: symbol; mso-bidi-font-family: symbol"&gt;&lt;span style="mso-list: ignore"&gt;&lt;font face="Symbol"&gt;·&lt;/font&gt;&lt;span style="line-height: normal; font-family: "&gt;&lt;font face="Times New Roman"&gt;&lt;font style="font-size: 7pt"&gt;         &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;std::list – LinkedList&amp;lt;T&amp;gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; text-indent: -0.25in; margin: 0in 0in 0pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpMiddle"&gt;&lt;font color="#000000"&gt;&lt;span style="font-family: ; mso-fareast-font-family: symbol; mso-bidi-font-family: symbol"&gt;&lt;span style="mso-list: ignore"&gt;&lt;font face="Symbol"&gt;·&lt;/font&gt;&lt;span style="line-height: normal; font-family: "&gt;&lt;font face="Times New Roman"&gt;&lt;font style="font-size: 7pt"&gt;         &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;std::stack – Stack&amp;lt;T&amp;gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; text-indent: -0.25in; margin: 0in 0in 10pt 0.5in; mso-list: l0 level1 lfo1" class="MsoListParagraphCxSpLast"&gt;&lt;font color="#000000"&gt;&lt;span style="font-family: ; mso-fareast-font-family: symbol; mso-bidi-font-family: symbol"&gt;&lt;span style="mso-list: ignore"&gt;&lt;font face="Symbol"&gt;·&lt;/font&gt;&lt;span style="line-height: normal; font-family: "&gt;&lt;font face="Times New Roman"&gt;&lt;font style="font-size: 7pt"&gt;         &lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;std::queue – Queue&amp;lt;T&amp;gt;&lt;/font&gt;&lt;/p&gt;  &lt;h1 style="line-height: 28pt; margin: 0in 0in 0pt"&gt;&lt;a name="_Toc315931805"&gt;&lt;font color="#000000"&gt;On lvalues and rvalues (and xvalues and prvalues)&lt;/font&gt;&lt;/a&gt;&lt;/h1&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;You may here mention of lvalues and rvalues from time to time. C++ has divided up rvalues into two subtypes: xvalues and prvalues. Which also generated something called glvalues. But we'll get confused if we go any further without clarifying this lvalue and rvalue business. The L and R stand for left and right. An lvalue was a value that could be on the left side of an assignment operator (in other words to the left of an = sign) while an rvalue was a value that could appear to the right of an assignment operator. So given&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCode"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;int x = 5 + 4;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;the x would be an lvalue, while 5, 4, and (5 + 4) would all be rvalues.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;C++11 has added the concept of rvalue references (which we will discuss shortly). This has created the concept of an expiring value (an xvalue), and in turn the concept of pure rvalues (prvalues).&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Prvalues are things like literals as well as the result of a function, provided that that result is not a reference.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;An xvalue is an object that's nearing the end of its life; for the most part this means the result of a function that returns an rvalue reference.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;An rvalue is either an xvalue or a prvalue.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;An lvalue is an object or a function. This also includes the result of a function where the result is an lvalue reference.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;A glvalue (a generalized lvalue) is either an lvalue or an xvalue.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;If you want to know more (or if the above doesn't make any sense), see:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/f90831hc.aspx"&gt;&lt;font color="#0000ff"&gt;&lt;u&gt;http://msdn.microsoft.com/en-us/library/f90831hc.aspx&lt;/u&gt;&lt;/font&gt;&lt;/a&gt;&lt;font color="#000000"&gt; and&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;a href="http://en.wikipedia.org/wiki/Value_(computer_science)"&gt;&lt;font color="#0000ff"&gt;&lt;u&gt;http://en.wikipedia.org/wiki/Value_(computer_science)&lt;/u&gt;&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h1 style="line-height: 28pt; margin: 0in 0in 0pt"&gt;&lt;a name="_Toc315931806"&gt;&lt;font color="#000000"&gt;Pointers&lt;/font&gt;&lt;/a&gt;&lt;/h1&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;A pointer stores a memory address. You can have a pointer to a function, a pointer to a class instance, a pointer to a struct, to an int, a float, a double, … you get the idea. You can declare a pointer in either of the two following ways:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpFirst"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;int* pSomePtr;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCodeCxSpLast"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;int *pSomeOtherPtr;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Which you use is purely a style thing; the compiler doesn't care. I use the int* syntax, personally.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Note the naming convention of beginning the name of a pointer with a lowercase p. This helps you instantly recognize that the variable you are working with is (or should be) a pointer. Using this naming style helps prevent bugs and helps make bugs easier to spot when they do crop up.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;DO NOT DO THIS:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCode"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;int* pSomePtr, pNotAPointer;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;The pNotAPointer variable is not a pointer to an integer. It is just an integer. The same as if you had said:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCode"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;int pNotAPointer;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;The * must be applied to each variable in a comma separated declaration, which is what makes that declaration evil for pointers. When you use a declaration like the above, it's hard for you (and others who look at your code) to know if you meant for pNotAPointer to be a pointer or just an integer (this is one place where the p naming convention helps). It's also easy to repeatedly overlook the missing * and waste a lot of time trying to find the source of the bug.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Because bugs like that are hard to track down, you should never declare multiple pointers on the same line. Put them on separate lines like this:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpFirst"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;int* pSomePtr;&lt;span style="mso-spacerun: yes"&gt;      &lt;/span&gt;// Definitely a pointer.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;int* pSomeOtherPtr; // Definitely a pointer.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCodeCxSpLast"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;int notAPointer; &lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;// Definitely NOT a pointer.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;The compiler doesn't care and you will avoid a bad style.&lt;/font&gt;&lt;/p&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931807"&gt;&lt;font color="#000000"&gt;Using pointers&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;I think the best way to describe using pointers is with documented code. So here's some documented code. Note that some of this code is bad style. I point this out in the comments.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpFirst"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;int x;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;// Creates an integer named x. Its value is&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;             &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;// undefined (i.e. gibberish).&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;x = 0;&lt;span style="mso-spacerun: yes"&gt;       &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;// x is now equal to zero rather than gibberish.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;int* pX;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;// Creates a pointer to an integer. Its value&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;              &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// is undefined (i.e gibberish). If you tried to&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;              &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// dereference it you would hopefully crash your&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;              &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// program.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;pX = &amp;amp;x;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;// pX now points to x. The &amp;amp; here means return&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;              &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// the memory address of x. So pX now holds the&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;              &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// memory address of x. This &amp;amp; is called the&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;              &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// address-of operator. There's also an &amp;amp; that&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;              &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// means an lvalue reference and one that means&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;              &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// a bitwise AND. You'll learn which is which.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;*pX = 1;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;// Sets x to one. The * here "dereferences" the&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;              &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// pointer (i.e. lets you operate on the value it&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;              &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// points to rather than on the pointer itself).&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;              &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// This * is called the indirection operator.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;pX = 1;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;// Bad – this makes the pointer point to memory&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;             &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;// address 0x01, which (if you are lucky) will&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;             &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;// cause your program to crash. If not you'll be&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;           &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;// randomly changing data the next time you use&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;             &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;// the pointer properly. Worse would be ptrToX++&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;              &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// since that is more likely to give you a real&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;              &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// memory address. More on that below.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;SomeClass sc; &lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;       &lt;/span&gt;// Create a SomeClass instance using&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;                       &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// its default constructor.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;SomeClass* pSc; &lt;span style="mso-spacerun: yes"&gt;       &lt;/span&gt;// Create a pointer to a SomeClass&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;                       &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// instance.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;pSc = &amp;amp;sc;&lt;span style="mso-spacerun: yes"&gt;      &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;       &lt;/span&gt;// Make pSc point to sc.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;pSc-&amp;gt;PrintSomeStr();&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;// This and the next statement are&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;                       &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// identical. The -&amp;gt; operator means&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;  &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;&lt;span style="mso-spacerun: yes"&gt;                     &lt;/span&gt;// dereference the pointer then get&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;                       &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// the member named PrintSomeStr. This&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;                       &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// syntax also works for data members.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;(*pSc).PrintSomeStr(); // Here we are first dereferencing the&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;                       &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// pointer explicitly (*pSc) and then&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;                       &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// we're using the . operator to get the&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;                       &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// PrintSomeStr member. -&amp;gt; is just clearer&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;                       &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// looking.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;pX = &amp;amp;x;&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;// Set pX pointing to x again after the mishap above.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;(*pX)++;&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;// This increments the value of x by one. It is&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;               &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// bad style because of what happens if you forget&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;               &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// the parentheses.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;*pX++;&lt;span style="mso-spacerun: yes"&gt;     &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;// This DOES NOT increment the value of x by one.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;           &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;// Instead this increments pX by one. It is the&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;           &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;// exact same result as if you had just written&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;           &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;// pX++; without having the * in front of it. In&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;               &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// other words this changes the memory address&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;               &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// pointed to by the pointer, not the value that&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;               &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// is stored at the memory address. The * is ignored.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;*pX = *pX + 1; // This produces the exact same assembly code as&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;               &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// (*pX)++; and doesn't have the same bug risk of&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;        &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;&lt;span style="mso-spacerun: yes"&gt;       &lt;/span&gt;// accidentally forgetting the parentheses. So&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;               &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// don't get cute with ++ and --. Just use this&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;               &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// instead.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;int ax[4]; &lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;// Declares an array of four integers. The&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;                   &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// values are all undefined. But this is&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;                   &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// not a dynamic array so you don't&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt; &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;&lt;span style="mso-spacerun: yes"&gt;          &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;// need to wrap it in a unique_ptr or&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;                   &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// anything.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;int* pAx = &amp;amp;ax[0]; // Creates a pointer to the first&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;                   &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// element of ax.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;*pAx = 0;&lt;span style="mso-spacerun: yes"&gt;          &lt;/span&gt;// Sets the value of the first element of&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;                   &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// ax to 0.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;pAx++;&lt;span style="mso-spacerun: yes"&gt;             &lt;/span&gt;// Sets the pointer to point to the second&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;                   &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// element of ax. Arrays are linear in memory&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;                   &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// and the ++ increments the pointer by the&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;                   &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// size of one element (in this case the size&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;              &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;&lt;span style="mso-spacerun: yes"&gt;     &lt;/span&gt;// of one integer).&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;*pAx = 20;&lt;span style="mso-spacerun: yes"&gt;         &lt;/span&gt;// Sets the value of the second element of&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;                   &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// ax to 20. It effects the same result as&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;                   &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// writing ax[1] = 20; would.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCodeCxSpLast"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;The above code should give you everything you need to know about how to work with pointers. Whether it's a pointer to int or a pointer to SomeClass doesn't matter. When working with an array, incrementing a pointer to the array's first element with ++ can be a lightning fast way to initialize the array. But if you mess up and run past the end of the array then you'll be corrupting memory (and hopefully will crash your program).&lt;/font&gt;&lt;/p&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931808"&gt;&lt;font color="#000000"&gt;Pointers to class member functions and the 'this' pointer; WinRT event handlers&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;One common pattern you'll see in WinRT for delegates and event handlers is this:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpFirst"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;_someToken = SomeEvent += ref new SomeEventHandler(&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;this,&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;&amp;amp;SomeClass::MemberFunctionHandlerForSomeEvent&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCodeCxSpLast"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;);&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;In C++, class member functions only exist once in memory no matter how many instances of the class you have. This makes sense since the function itself doesn't change for each instance; only the data that it operates on changes. So all the function needs to know is which data to operate one. As we'll see shortly, the C++ compiler takes care of that for us.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;(The same is true in C# actually. Or usually true, anyway. The lone difference is that in C# if you've never run or referenced a method then the method probably won't be in memory since it likely hasn't been jitted yet. Once the program needs the method to be in memory it will be jitted and then it will exist once in memory, just like in C++.)&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;What the event handler constructor code is doing is constructing a delegate that says "hey you event, when you fire I want you to call me, this instance (ergo you pass the "this" pointer to specify that it should use this instance's data) with the class member function that is located at this memory address (which is what using the address-of operator with a class member function does gives you). It's the combination of instance data and the member function's address in memory that lets the event call the right member function with the right data whenever the event fires. (The bit about the token is just a peculiarity with how you unsubscribe from an event in WinRT when using C++.)&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Note that we use the scope-resolution operator, "::", when taking the address of the member function. We use this (rather than . or -&amp;gt;) since what we are after is the address in memory of the member function itself, which as we already said is common to all instances of the class. It will make more sense if we briefly examine what happens when a C++ class member function is compiled.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Behind the scenes, when the C++ compiler compiles a member function it automatically adds a "this" pointer as a parameter to all of the instance member functions of our classes. The "this" pointer is a pointer to a particular instance of the class that the member function is a member of. When you call an instance member function the compiler takes that call and uses that instance's location in memory as the value of the "this" parameter that it added. The member function is wired up to use that "this" pointer to access and operate on the correct instance data.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Knowing all of this should help you understand what the purpose of that syntax for the event handler is. When the event is triggered, in order for the event to call the member function we specified it needs the address of the class instance to pass to the member function as the compiler-added "this" parameter. The only way it can know that is if we tell it what the address is. We do that by passing in "this" as a parameter to the delegate constructor. If you wanted some other class instance, then instead of passing in "this" you would pass in &amp;amp;theOtherInstance as the first parameter (using the address-of operator to get its memory address).&lt;/font&gt;&lt;/p&gt;  &lt;h1 style="line-height: 28pt; margin: 0in 0in 0pt"&gt;&lt;a name="_Toc315931809"&gt;&lt;font color="#000000"&gt;References&lt;/font&gt;&lt;/a&gt;&lt;/h1&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;References are an attempt to prevent you from shooting your foot off with pointers without removing the ability to pass parameters by reference. They largely succeed but have some inherent limits and are different than .NET references (which really act more like pointers in some ways.&lt;/font&gt;&lt;/p&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931810"&gt;&lt;font color="#000000"&gt;Lvalue references&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Lvalue references are a way to create a reference to a value. They are useful for passing a parameter by reference rather than copying by value. Like with pointers, some examples will help explain them.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpFirst"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;int x = 0; &lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;// Create an int named x and set it equal to zero.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;int&amp;amp; rX = x; // Creates an integer reference named rX and sets&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;             &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// it to refer to x. From now on rX acts like x.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;x++;&lt;span style="mso-spacerun: yes"&gt;         &lt;/span&gt;// x is now equal to one.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;rX++;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;// x is now equal to two. Note how we didn't need&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;             &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// to dereference anything. Once rX is assigned a&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;             &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// value it becomes that value for all intents and &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;             &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// purposes. You cannot make rX refer to anything&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;             &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// else.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;int &amp;amp;rY; // This is illegal. A reference must be assigned a value&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;         &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// when it is created. The only exception is in a&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;         &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// function definition since the value is assigned when&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;         &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// the function is called or in a class data member&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;         &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// definition (though I don't see much utility in having&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;         &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// a data member that is a reference, personally).&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;// For the following function, by using a reference, we won't&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;// invoke the copy constructor when calling this function&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;// since rSc is a reference to an instance of SomeClass,&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;// not a separate instance of SomeClass. And we'll only be&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;// passing the size of a reference (4 bytes in a 32-bit&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;// program) versus the size of the object (44 bytes using the&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;// definition of SomeClass from the C++ constructors section).&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;// So references are your friend. In this case, since we won't&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;// be changing anything in the SomeClass instance, we mark the&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;// rSc parameter const.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;void DoSomething(const SomeClass&amp;amp; rSc)&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;rSc.PrintSomeStr(); // Notice that we use the . operator and&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;                &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;// not the -&amp;gt; operator.&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCodeCxSpLast"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Passing parameters by reference (as in the DoSomething function above) prevents memory churning, prevents a constructor from running, and gives us the same behavior as we would expect if we passed a class as a parameter in .NET (i.e. a reference to the same object, not a separate copy of the object).&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;If you want to pass a copy of the object to a function for some reason then you can. Just leave off the reference marker on the parameter declaration and it will make a copy of the object and pass that copy in when you call the function. If you want to pass a copy to a function that takes a parameter by reference then you need to construct a copy first and then pass the copy in as the parameter when you call the function (since the function definition will only take a reference such that it won't trigger the copy constructor on its own).&lt;/font&gt;&lt;/p&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931811"&gt;&lt;font color="#000000"&gt;Rvalue references&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;We've already seen rvalue references in the C++ constructors. The move constructor and move assignment operator both dealt in them. They use a syntax that looks like this:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCode"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;SomeClass&amp;amp;&amp;amp; rValRef;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;They are only particularly useful for move semantics and as we've already covered that in the constructors section, there's not much more to say about them here. They are new in C++11 but VC++ 2010 supports them.&lt;/font&gt;&lt;/p&gt;  &lt;h1 style="line-height: 28pt; margin: 0in 0in 0pt"&gt;&lt;a name="_Toc315931812"&gt;&lt;font color="#000000"&gt;Templates&lt;/font&gt;&lt;/a&gt;&lt;/h1&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Templates are sort of like .NET generics except that they aren't. They work to accomplish the same goal (generic programming) but do so in a different way. If you are curious to learn more about how .NET generics work, I recommend reading this interview with Anders Hejlsberg: &lt;/font&gt;&lt;a href="http://www.artima.com/intv/generics.html"&gt;&lt;font color="#0000ff"&gt;&lt;u&gt;http://www.artima.com/intv/generics.html&lt;/u&gt;&lt;/font&gt;&lt;/a&gt;&lt;font color="#000000"&gt; . I'm going to focus strictly on C++ templates.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Templates are an integral part of the C++ Standard Library. Indeed, the Standard Library is an outgrowth of an earlier project called the Standard Template Library and it's common to see the Standard Library referred to as the STL.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;C++ templates allow you to write classes and stand-alone functions which take in type parameters and perform operations on them. Here is an example:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpFirst"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;#include &amp;lt;iostream&amp;gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;#include &amp;lt;ostream&amp;gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;template&amp;lt; class T &amp;gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;void PrintTemplate(T&amp;amp; a)&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;std::wcout &amp;lt;&amp;lt; a &amp;lt;&amp;lt; endl;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCodeCxSpLast"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;What C++ does with this is interesting. The compiler will generate a version of PrintTemplate for each type that you call it with and will then use that version for all invocations of PrintTemplate with that data type. So, for example, if you wrote:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpFirst"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;int x = 40;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCodeCxSpLast"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;PrintTemplate&amp;lt;int&amp;gt;(x);&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;the compiler would create a special int version of PrintTemplate, verify that this version of PrintTemplate can in fact work with an int (in this case making sure that int has a &amp;lt;&amp;lt; operator defined for it), and if so create everything. Since everything is generated at compile-time it is very fast at execution time. A downside is that you can get some bizarre error stuff in the output window if you tried to pass in a type that doesn't have a &amp;lt;&amp;lt; operator defined (e.g. our SomeClass type). And the build will fail, of course.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Indeed, overloaded operators tend to play a big part in template programming. If you take in two types and try to add them, you need to make sure that there's a + operator defined that adds those two types, otherwise it'll be carnage in your output window.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;As far as the syntax goes, you just prefix the function or class with template&amp;lt; … &amp;gt; and you are set to go. You can pass as many or as few types as you want. The "class" keyword in there includes classes, structs, and built-in types like int (it likely includes unions too, though I have not tested that). The letter T is just a style convention, the same as in .NET; you can use anything as an identifier.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;You can also use concrete types if you like, but then you need to pass a constant value in as the type parameter when invoking the template function/class.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Separate multiple types with a comma.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;It's very easy to mess up template syntax and figuring out what you did wrong is a process of looking at the error message, looking up the compiler error number on MSDN, and trying to fix it based on what the error means. If you get stuck, try reading through the MSDN reference documentation on templates: &lt;/font&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/y097fkab.aspx"&gt;&lt;font color="#0000ff"&gt;&lt;u&gt;http://msdn.microsoft.com/en-us/library/y097fkab.aspx&lt;/u&gt;&lt;/font&gt;&lt;/a&gt;&lt;font color="#000000"&gt; .&lt;/font&gt;&lt;/p&gt;  &lt;h1 style="line-height: 28pt; margin: 0in 0in 0pt"&gt;&lt;a name="_Toc315931813"&gt;&lt;font color="#000000"&gt;MACROS&lt;/font&gt;&lt;/a&gt;&lt;/h1&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Don't create macros. You'll shoot your eye out. See, e.g.: &lt;/font&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/dy3d35h8.aspx"&gt;&lt;font color="#0000ff"&gt;&lt;u&gt;http://msdn.microsoft.com/en-us/library/dy3d35h8.aspx&lt;/u&gt;&lt;/font&gt;&lt;/a&gt;&lt;font color="#000000"&gt; (halfway through the Remarks section). If you're thinking about something that you think might make a good macro, use an inline function instead.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;(Mind you, don't intentionally avoid macros that exist within headers that come with the Windows SDK or other SDKs and toolkits you decide to use. Just be aware of the fact that there can be unintentional side effects with macros like in the MSDN example above so avoid code with the potentiality for side effects when using a macro (. Keep it simple.)&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Do, however, use other preprocessor features. For example, you should always put&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCode"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;#pragma once&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;at the top of all header files you write to make sure they are only processed once no matter how many files #include them. That notation is a Microsoft-specific thing, btw. You could also use the ISO-compliant&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpFirst"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;#ifndef __SOMECLASS_H_&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;#define __SOMECLASS_H_&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;// Your header file code here.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCodeCxSpLast"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;#endif&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;style. It’s up to you; I use the #pragma syntax since I don’t need to worry about name collision that way. If you use the ISO-compliant syntax and somehow ended up with two files with the same name and forgot, you’ll need to patch up the resulting error from the one file not being included due to the symbol already being defined by the previously included other file. One way to avoid that problem would be to bake in any namespaces or directory paths into the symbol names, e.g. __SOMENAMESPACE_SOMECLASS_H_. You also need to make sure all the header file code is inside the region between the #define … and the #endif if you use ISO-compliant syntax.&lt;/font&gt;&lt;/p&gt;  &lt;h1 style="line-height: 28pt; margin: 0in 0in 0pt"&gt;&lt;a name="_Toc315931814"&gt;&lt;font color="#000000"&gt;C++/CX (aka C++ Component Extensions)&lt;/font&gt;&lt;/a&gt;&lt;/h1&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Go watch Herb Sutter's excellent //build/ conference presentation, "Using the Windows Runtime from C++": &lt;/font&gt;&lt;a href="http://channel9.msdn.com/Events/BUILD/BUILD2011/TOOL-532T"&gt;&lt;font color="#0000ff"&gt;&lt;u&gt;http://channel9.msdn.com/Events/BUILD/BUILD2011/TOOL-532T&lt;/u&gt;&lt;/font&gt;&lt;/a&gt;&lt;font color="#000000"&gt; . It's a little over an hour long and will give you good insight not just into C++/CX but also into WinRT and Metro style app development in general.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;C++ Component Extensions are a set of language extensions that make it possible to interface with the Windows Runtime and to write components that can be used from languages like C#, VB, and even JavaScript.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;The two most common things you will see are the hat symbol '^' which is basically a WinRT pointer and the ref keyword (used in defining a WinRT class and instantiating a new instance of them). WinRT classes are automatically reference counted so you do not need to worry about putting them inside a unique_ptr. Instead you instantiate them like this:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCode"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;auto someRTClass = ref new SomeRTClass();&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;The use of 'ref new' is necessary to create a WinRT class instance.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;You only need to write a WinRT class if you are writing a WinRT component that's meant to be used as a library in some other application. You don't need to do this for classes that are directly in your game/application (though you can if you want; there's some overhead due to the automatic reference counting but it shouldn't be all that bad).&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;The following is an example of a WinRT class:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpFirst"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;#pragma once&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;#include &amp;lt;unordered_map&amp;gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;#include &amp;lt;collection.h&amp;gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;using namespace Windows::Foundation;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;using namespace Windows::Foundation::Collections;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;namespace SomeComponent&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;public ref class SomeRTClass sealed&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;public:&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;        &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;SomeRTClass()&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;            &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;: someStr_(L"")&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;            &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;, someInts_(ref new Platform::Vector&amp;lt;int&amp;gt;())&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;        &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;            &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;// Do nothing&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;        &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;        &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;~SomeRTClass() { }&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;        &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;property Platform::String^ SomeStr&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;        &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;            &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;Platform::String^ get() { return someStr_;}&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;            &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;void set(Platform::String^ &lt;i&gt;value&lt;/i&gt;) { someStr_ = &lt;i&gt;value&lt;/i&gt;; }&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;        &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;        &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;int GetKeyedNamesCount(void) { return m_keyedNames.size(); }&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;        &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;Platform::String^ GetKeyedName(int &lt;i&gt;key&lt;/i&gt;)&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;        &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;            &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;try&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;            &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;                &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;return ref new Platform::String(m_keyedNames.at(&lt;i&gt;key&lt;/i&gt;).data());&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;            &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;            &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;catch(...)&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;            &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;                &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;throw ref new Platform::FailureException();&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;            &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt; &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;&lt;span style="mso-spacerun: yes"&gt;       &lt;/span&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;        &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;void SetKeyedName(int &lt;i&gt;key&lt;/i&gt;, Platform::String^ &lt;i&gt;value&lt;/i&gt;)&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;        &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;            &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;m_keyedNames[&lt;i&gt;key&lt;/i&gt;] = std::wstring(&lt;i&gt;value&lt;/i&gt;-&amp;gt;Data());&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;        &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;        &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;property IVector&amp;lt;int&amp;gt;^ &lt;span style="mso-spacerun: yes"&gt;              &lt;/span&gt;SomeInts&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;        &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;            &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;IVector&amp;lt;int&amp;gt;^ get() { return someInts_; }&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;        &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt; &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;private:&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;        &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;Platform::String^&lt;span style="mso-spacerun: yes"&gt;                    &lt;/span&gt;someStr_;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;        &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;Platform::Vector&amp;lt;int&amp;gt;^&lt;span style="mso-spacerun: yes"&gt;               &lt;/span&gt;someInts_;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;        &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;std::unordered_map&amp;lt;int,std::wstring&amp;gt; m_keyedNames;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 0pt" class="SourceCodeCxSpMiddle"&gt;&lt;font face="Courier New"&gt;&lt;font color="#000000"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font style="font-size: 11pt"&gt;    &lt;/font&gt;&lt;/span&gt;&lt;font style="font-size: 11pt"&gt;};&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCodeCxSpLast"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Anything in your component's public interface needs to deal in WinRT types (including fundamental types such as int; see: &lt;/font&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/windows/apps/br212455(v=vs.110).aspx"&gt;&lt;font color="#0000ff"&gt;&lt;u&gt;http://msdn.microsoft.com/en-us/library/windows/apps/br212455(v=vs.110).aspx&lt;/u&gt;&lt;/font&gt;&lt;/a&gt;&lt;font color="#000000"&gt; ).&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Public collection types must be WinRT interfaces to collection types (i.e. IVector&amp;lt;T&amp;gt; instead of Vector&amp;lt;T&amp;gt;).&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Private code can use non-WinRT types such as std::unordered_map.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Also, the sealed keyword is only necessary to use the WinRT component in JavaScript.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;If you ever did any managed C++ coding, you will likely notice that C++/CX syntax is pretty much the exact same syntax as managed C++. Microsoft elected to reuse the syntax since it had already been approved as a language extension by the ECMA standards organization. But C++/CX is entirely native; .NET is not involved and there is no GC running in the background (WinRT classes are automatically reference counted, remember).&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;For more on C++/CX and WinRT (including all of the rules governing WinRT components), I recommend checking out &lt;/font&gt;&lt;a href="http://dev.windows.com/"&gt;&lt;font color="#0000ff"&gt;&lt;u&gt;http://dev.windows.com/&lt;/u&gt;&lt;/font&gt;&lt;/a&gt;&lt;font color="#000000"&gt; (especially the Visual C++ reference for Windows Runtime page - &lt;/font&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/windows/apps/br229567.aspx"&gt;&lt;font color="#0000ff"&gt;&lt;u&gt;http://msdn.microsoft.com/en-us/library/windows/apps/br229567.aspx&lt;/u&gt;&lt;/font&gt;&lt;/a&gt;&lt;font color="#000000"&gt; ).&lt;/font&gt;&lt;/p&gt;  &lt;h1 style="line-height: 28pt; margin: 0in 0in 0pt"&gt;&lt;a name="_Toc315931815"&gt;&lt;font color="#000000"&gt;Visual Studio and C++&lt;/font&gt;&lt;/a&gt;&lt;/h1&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931816"&gt;&lt;font color="#000000"&gt;Initial configuration&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;If you're using VC++ 2010 Express for the first time, there are a few settings changes I recommend making (especially if you are coming from C#).&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;First, in the "Tools" menu under "Settings" switch to "Expert Settings". I recommend this for all Express SKUs of Visual Studio.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Next, in "Tools"-&amp;gt;"Options…" under "Environment"-&amp;gt;"Keyboard" switch the drop down menu from "(Default)" to "Visual C# 2005". This will prevent you from going crazy when F6 doesn't compile. If you are more comfortable with a different key mapping, use that one instead. The point is to switch to keys that you are familiar with.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;While in "Options…" change any other settings you like. One thing I like to do is under "Text Editor"-&amp;gt;"C/C++", in "General" I like to turn line numbers on and in "Tabs" I've taken to setting "Insert spaces" rather than "Keep tabs". &lt;/font&gt;&lt;/p&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931817"&gt;&lt;font color="#000000"&gt;IntelliSense&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;If you’re using almost any of the Visual Studio keyboard mappings, typing Ctrl+J will bring up IntelliSense. In VS11 IntelliSense should appear automatically in C++. In VS 2010 and earlier, you need to manually invoke it.&lt;/font&gt;&lt;/p&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931818"&gt;&lt;font color="#000000"&gt;Code snippets&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;I’ve never made too much use of code snippets, though I find myself using them more and more since I learned that the magic secret to accepting the parameters and starting to code is just to hit Enter.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Code snippets are a new feature for C++ in VS11; they don’t exist in earlier versions. If you’ve never used them (in any language), in a C# project start typing ‘for’ to begin a for loop but once IntelliSense has chosen the for snippet, press the Tab key twice and watch as a for loop appears complete with automatic fields that you can edit (use the Tab key to switch between fields). When you’re done editing the fields, press Enter and the cursor will be transported within the loop body with the field edits you made (if any) accepted and appearing now as normal text.&lt;/font&gt;&lt;/p&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931819"&gt;&lt;font color="#000000"&gt;Including libraries&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;In C++, it's usually not enough to just include a header file. Normally you need to tell the linker to link against a library that implements the code that is declared in the header file. To do this, you need to edit the project's properties, accessible as "ProjectName Properties…" in the "Project" menu. In the properties, under "Configuration Properties" -&amp;gt; "Linker" -&amp;gt; "Input", one of the fields is "Additional Dependencies". This is a semi-colon separated list of the .LIB files you need to link against. It should end with&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCode"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;%(AdditionalDependencies)&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;so that any additional libraries that are linked via MSBuild are properly added. For a typical DirectX 11 Metro style game you might see the following:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: normal; margin: 0in 0in 10pt" class="SourceCode"&gt;&lt;font face="Courier New"&gt;&lt;font style="font-size: 11pt" color="#000000"&gt;d2d1.lib; d3d11.lib; dxgi.lib; ole32.lib; windowscodecs.lib; dwrite.lib; xaudio2.lib; xinput.lib; mfcore.lib; mfplat.lib; mfreadwrite.lib; mfuuid.lib; %(AdditionalDependencies)&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931820"&gt;&lt;font color="#000000"&gt;Precompiled headers&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;A precompiled header (PCH) is a special type of header file. Like a normal header file, you can stick both include statements and code definitions in it. What it does differently is that it helps to speed up compile times. The PCH will be compiled the first time you build your program. From then on, as long as you don't make any changes to the PCH or to anything that is #included in the PCH, the compiler can reuse its pre-compiled version of the PCH. So don't stick anything in it that is likely to change a lot. But do add things that are unlikely to change. This way your compile times will speed up since a lot of code (e.g. Standard Library headers) will not need to be recompiled every build.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;If you use a PCH, you need to #include it at as the first include statement at the top of every CPP file (but not at the top of header files). If you forget to include it or put some other include statement above it then the compiler will generate an error. This is just a result from the way the compiler needs to see PCHs in order to make it work.&lt;/font&gt;&lt;/p&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931821"&gt;&lt;font color="#000000"&gt;Generating assembly code files&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;If you want to view (a very close approximation of) the assembly code that your code is compiled down into, in your project’s properties, under "Configuration Properties"-&amp;gt;"C/C++"-&amp;gt;"Output Files" set the "Assembler Output" option to something other than "No Listing".&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;I’d recommend either "Assembly-Only Listing (/FA)" or "Assembly With Source Code (/FAs)". I normally use the former; it sprinkles enough line number comments that I can cross-reference to see what code I’m dealing with. The latter can be helpful if you want one place to see it all rather than flipping back and forth between whatever you’ve opened the .ASM file in (I use Notepad++) and Visual Studio.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Note that the assembly that is generated uses MASM macros (you can look them up on MSDN). If you don’t know what a particular assembly instruction means (e.g. LEA), you can search the internet for it or try downloading the appropriate programming manual from Intel’s site (assuming x86/Itanium) or AMD’s site (assuming x64) or ARM Holding’s site (assuming ARM). If you’ve never learned any assembly, I definitely recommend it (try just creating a simple Windows Console app). The course I enjoyed most out of all the Comp Sci classes I took in my undergrad minor in CS was where I learned MIPS asm.&lt;/font&gt;&lt;/p&gt;  &lt;h2 style="line-height: 21pt; margin: 10pt 0in"&gt;&lt;a name="_Toc315931822"&gt;&lt;font color="#000000"&gt;Terrifying build errors&lt;/font&gt;&lt;/a&gt;&lt;/h2&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Chances are if you come across a build error that looks completely horrible, it’s from the linker. You’ll see messages like this, for instance:&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Error&lt;span style="mso-tab-count: 1"&gt;  &lt;/span&gt;2&lt;span style="mso-tab-count: 1"&gt;          &lt;/span&gt;error LNK2019: unresolved external symbol "public: __thiscall SomeClass::SomeClass(wchar_t const *)" (??0SomeClass@@QAE@PB_W@Z) referenced in function "void __cdecl DoSomething(void)" (?DoSomething@@YAXXZ)&lt;span style="mso-tab-count: 1"&gt;            &lt;/span&gt;D:\VS2010Proj\CppSandbox\CppSandbox\CppSandbox.obj&lt;span style="mso-tab-count: 1"&gt; &lt;/span&gt;CppSandbox&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;All that’s saying is that it cannot find some function you said it should be able to find. In this case, I added the ‘inline’ keyword to a constructor function definition that was in the CPP file without remembering to relocate that definition to the header file. Any inline functions need to be in the header so that the linker won’t hate you.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;All those ?? and @@and weird letters are just the way that C++ mangles names when it has compiled code into object files. Name mangling is internally consistent for the compiler in question but the ISO/IEC standard doesn’t mandate any particular schema for name mangling such that different compilers can (and often will) mangle things differently.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;Anyway, normally if you see some sort of horrifying build error message, chances are good that it’s from the linker and that it’s an unresolved symbol error. If so, if it’s saying it can’t find something that you wrote (in the above case my SomeClass::SomeClass(wchar_t const *) constructor function (I always write ‘const type’ not ‘type const’ so even that bit is reconstructed)) then check to make sure that your declaration (in the header file) matches the definition (usually in the code file but maybe you put it in the header or maybe you forgot to write it or maybe you declared it inline but still have it in the code file). If it’s someone else’s function (or other symbol), then chances are that you didn’t tell the linker about the .lib file that contains it.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;In .NET you just add a reference to an assembly and you get both the declaration bits and the actual definition stuff all in one. In C++, the declaration is the header file while the definition stuff (excluding inline stuff, which needs to be in the header file too) is in a separate library. See above about including libraries. Search the MSDN library for the symbol that it’s telling you it is missing and see if you can find the name of the library file you need to add.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;C++ build errors can look pretty scary. Especially when you get a build error involving a template… those can make you want to quit. But don’t. Never let the horrible error messages win.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;First figure out if it’s coming from the compiler (it’ll have a C#### error number format) or the linker (LNK#### error number format).&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;The compiler usually means some sort of syntax error. Check to see things like whether you forgot the #pragma once at the top of your header file. Another problem could be where you are using something from the standard library (e.g. ‘endl’) but forgot to have either a #using namespace std; or else to prefix it with std:: (i.e. ‘std::endl’). You can do either (or both) but must do at least one. And some things might be in a different namespace (in VS 2010, some functionality is in the stdext namespace, for example). The same goes for any namespaces you might be using in your own code.&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;If you aren’t having any luck on your own, try going on MSDN and typing in the first part of the error message. Chances are good that you’ll get some helpful links to discussions on the MSDN forums, on StackOverflow, perhaps an MSDN article or an MSDN blog post, … maybe even just the error code’s page itself will have the hint you need. If all else fails, post a question on a forums site (MSDN, the appropriate StackExchange site, the App Hub).&lt;/font&gt;&lt;/p&gt;  &lt;p style="line-height: 14pt; margin: 0in 0in 10pt" class="MsoNormal"&gt;&lt;font color="#000000"&gt;A linker error is typically an unresolved symbol, which usually means you either have a mismatch in declaration and definition, have an inline outside of its header, or else don’t have the right library added to the project’s extra dependencies in the project’s linker options. If it’s something else, try the strategies from the previous paragraph; they apply just as well to linker errors as to compiler errors.&lt;/font&gt;&lt;/p&gt; &lt;img src="http://geekswithblogs.net/mikebmcl/aggbug/148562.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/ka00uUkyUWo" height="1" width="1"/&gt;</description><dc:creator>Michael B. McLaughlin</dc:creator><feedburner:origLink>http://geekswithblogs.net/mikebmcl/archive/2012/02/02/c-to-c-ndash-a-somewhat-short-guide.aspx</feedburner:origLink></item><item><title>Free Classroom training in Singapore</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/iUMwKpu-M2g/free-classroom-training-in-singapore.aspx</link><pubDate>Thu, 02 Feb 2012 11:40:03 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/AmanGarg/archive/2012/02/02/free-classroom-training-in-singapore.aspx</guid><wfw:comment>http://geekswithblogs.net/AmanGarg/comments/148561.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/AmanGarg/comments/commentRss/148561.aspx</wfw:commentRss><comments>http://geekswithblogs.net/AmanGarg/archive/2012/02/02/free-classroom-training-in-singapore.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/AmanGarg/services/trackbacks/148561.aspx</trackback:ping><source url="http://geekswithblogs.net/AmanGarg/rss.aspx">Free Classroom training in Singapore</source><description>&lt;p style="margin: 0in 0in 10pt; text-align: justify; line-height: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;" class="MsoNormal"&gt;&lt;span style="color: white; font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-themecolor: background1;"&gt;Inviting
all the people who wish to expand their knowledge in the field of Microsoft
Technologies. I will be conducting &lt;b&gt;FREE &lt;/b&gt;classes on various streams in
Microsoft Technologies like:&lt;/span&gt;&lt;span style="color: white; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-themecolor: background1;"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /?&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;ul type="disc"&gt;
 &lt;li style="margin: 0in 0in 10pt; text-align: justify; color: white; line-height: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo1; tab-stops: list .5in; mso-themecolor: background1;" class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;SharePoint
     - Administration and Development&lt;/span&gt;&lt;/b&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;
 &lt;li style="margin: 0in 0in 10pt; text-align: justify; color: white; line-height: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo1; tab-stops: list .5in; mso-themecolor: background1;" class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;Visual
     Studio - 2010&lt;/span&gt;&lt;/b&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;
 &lt;li style="margin: 0in 0in 10pt; text-align: justify; color: white; line-height: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo1; tab-stops: list .5in; mso-themecolor: background1;" class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;C#
     and .NET 4&lt;/span&gt;&lt;/b&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;
 &lt;li style="margin: 0in 0in 10pt; text-align: justify; color: white; line-height: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo1; tab-stops: list .5in; mso-themecolor: background1;" class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;LINQ&lt;/span&gt;&lt;/b&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;
 &lt;li style="margin: 0in 0in 10pt; text-align: justify; color: white; line-height: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo1; tab-stops: list .5in; mso-themecolor: background1;" class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;Team
     Foundation Server 2010&lt;/span&gt;&lt;/b&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;
 &lt;li style="margin: 0in 0in 10pt; text-align: justify; color: white; line-height: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo1; tab-stops: list .5in; mso-themecolor: background1;" class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;SSIS&lt;/span&gt;&lt;/b&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;
 &lt;li style="margin: 0in 0in 10pt; text-align: justify; color: white; line-height: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo1; tab-stops: list .5in; mso-themecolor: background1;" class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;ASP
     .NET&lt;/span&gt;&lt;/b&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;
 &lt;li style="margin: 0in 0in 10pt; text-align: justify; color: white; line-height: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo1; tab-stops: list .5in; mso-themecolor: background1;" class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;Programming
     Office Apps &amp;amp; Open XML&lt;/span&gt;&lt;/b&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;
 &lt;li style="margin: 0in 0in 10pt; text-align: justify; color: white; line-height: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo1; tab-stops: list .5in; mso-themecolor: background1;" class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;Basic
     SQL Server and Queries&lt;/span&gt;&lt;/b&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;
 &lt;li style="margin: 0in 0in 10pt; text-align: justify; color: white; line-height: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo1; tab-stops: list .5in; mso-themecolor: background1;" class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;Windows
     Azure&lt;/span&gt;&lt;/b&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;
 &lt;li style="margin: 0in 0in 10pt; text-align: justify; color: white; line-height: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo1; tab-stops: list .5in; mso-themecolor: background1;" class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;One
     Note&lt;/span&gt;&lt;/b&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;span style="font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p style="margin: 0in 0in 10pt; text-align: justify; line-height: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;" class="MsoNormal"&gt;&lt;span style="color: white; font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-themecolor: background1;"&gt;All
the courses will be taught using Microsoft Official Curriculum. Soft copies of
Lab material, Virtual Labs and other course material will be provided. Classes
will be conducted only on weekends.&lt;/span&gt;&lt;span style="color: white; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-themecolor: background1;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin: 0in 0in 10pt; text-align: justify; line-height: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;" class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;u&gt;&lt;span style="color: white; font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-themecolor: background1;"&gt;About Me&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;span style="color: white; font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-themecolor: background1;"&gt;:
Having more than 10 years of IT Experience worked in some of the biggest
companies in Financial and Consulting Domain. Proficient speaker at various
events like CTU Singapore and local UG. Certified Trainer from Microsoft (MCT),
ex-MVP, MCITP, MOS (SharePoint, One Note), Early Achiever in MCSD .NET, MCSD
(VB 6.0)&lt;/span&gt;&lt;span style="color: white; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-themecolor: background1;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin: 0in 0in 10pt; text-align: justify; line-height: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;" class="MsoNormal"&gt;&lt;span style="color: white; font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-themecolor: background1;"&gt;Again,
all courses are totally FREE of cost with no strings attached and no hidden
costs. Only requirement is your dedication and interest.&lt;/span&gt;&lt;span style="color: white; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-themecolor: background1;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin: 0in 0in 10pt; text-align: justify; line-height: normal; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto;" class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight: normal;"&gt;&lt;u&gt;&lt;span style="color: white; font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-themecolor: background1;"&gt;Mail me&lt;/span&gt;&lt;/u&gt;&lt;/b&gt;&lt;span style="color: white; font-family: &amp;quot;Verdana&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 10pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-themecolor: background1;"&gt;:
&lt;b&gt;&lt;u&gt;amandeepgarg[at]hotmail.com&lt;/u&gt;&lt;/b&gt; if you wish to attend any of the
courses. Spread the word amongst your friends who might be interested as well.
Courses are only available in SINGAPORE.v&lt;/span&gt;&lt;span style="color: white; font-family: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 12pt; mso-fareast-font-family: &amp;quot;Times New Roman&amp;quot;; mso-themecolor: background1;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;

 &lt;img src="http://geekswithblogs.net/AmanGarg/aggbug/148561.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/iUMwKpu-M2g" height="1" width="1"/&gt;</description><dc:creator>Aman Garg</dc:creator><feedburner:origLink>http://geekswithblogs.net/AmanGarg/archive/2012/02/02/free-classroom-training-in-singapore.aspx</feedburner:origLink></item><item><title>New version of Firefox (10!)</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/kBzU7D16s2E/new-version-of-firefox-10.aspx</link><pubDate>Thu, 02 Feb 2012 09:09:42 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/TATWORTH/archive/2012/02/02/new-version-of-firefox-10.aspx</guid><wfw:comment>http://geekswithblogs.net/TATWORTH/comments/148560.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/TATWORTH/comments/commentRss/148560.aspx</wfw:commentRss><comments>http://geekswithblogs.net/TATWORTH/archive/2012/02/02/new-version-of-firefox-10.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/TATWORTH/services/trackbacks/148560.aspx</trackback:ping><source url="http://geekswithblogs.net/TATWORTH/rss.aspx">New version of Firefox (10!)</source><description>A new version of Firefox is now out - version 10!&lt;br /&gt;&lt;br /&gt;In Firefox, go to Help, About FireFox, wait for the download to run and apply!&lt;br /&gt; &lt;img src="http://geekswithblogs.net/TATWORTH/aggbug/148560.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/kBzU7D16s2E" height="1" width="1"/&gt;</description><dc:creator>TATWORTH</dc:creator><feedburner:origLink>http://geekswithblogs.net/TATWORTH/archive/2012/02/02/new-version-of-firefox-10.aspx</feedburner:origLink></item><item><title>Friend with a great Hair Loss Site  call HairLossTalk.com</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/juw_nhg_GtQ/friend-with-a-great-hair-loss-site--call-hairlosstalk.com.aspx</link><pubDate>Thu, 02 Feb 2012 07:33:41 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/TomStickel/archive/2012/02/02/friend-with-a-great-hair-loss-site--call-hairlosstalk.com.aspx</guid><wfw:comment>http://geekswithblogs.net/TomStickel/comments/148559.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/TomStickel/comments/commentRss/148559.aspx</wfw:commentRss><comments>http://geekswithblogs.net/TomStickel/archive/2012/02/02/friend-with-a-great-hair-loss-site--call-hairlosstalk.com.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/TomStickel/services/trackbacks/148559.aspx</trackback:ping><source url="http://geekswithblogs.net/TomStickel/rss.aspx">Friend with a great Hair Loss Site  call HairLossTalk.com</source><description>A friend of my runs a site called &lt;a href="http://www.Hairlosstalk.com" target="_blank"&gt;Hairlosstalk.com&lt;/a&gt;  I am very happy for him as he worked very hard on the site authoring articles after countless hours and years of research and blogging and writing and chatting and on and on.  So certainly for anyone male or female wanting to get good advise on preventing Hair Loss and growing back some lost hair, his website gets a ton of traffic and for good reason.   &lt;img src="http://geekswithblogs.net/TomStickel/aggbug/148559.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/juw_nhg_GtQ" height="1" width="1"/&gt;</description><dc:creator>TomStickel</dc:creator><feedburner:origLink>http://geekswithblogs.net/TomStickel/archive/2012/02/02/friend-with-a-great-hair-loss-site--call-hairlosstalk.com.aspx</feedburner:origLink></item><item><title>My ANT File for SchemaSpy </title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/BT_Atz-NhAY/my-ant-file-for-schemaspy.aspx</link><pubDate>Thu, 02 Feb 2012 07:29:22 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/TomStickel/archive/2012/02/02/my-ant-file-for-schemaspy.aspx</guid><wfw:comment>http://geekswithblogs.net/TomStickel/comments/148558.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/TomStickel/comments/commentRss/148558.aspx</wfw:commentRss><comments>http://geekswithblogs.net/TomStickel/archive/2012/02/02/my-ant-file-for-schemaspy.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/TomStickel/services/trackbacks/148558.aspx</trackback:ping><source url="http://geekswithblogs.net/TomStickel/rss.aspx">My ANT File for SchemaSpy </source><description>&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;&amp;lt;?xml version="1.0"?&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;&amp;lt;project name="&lt;span class="il" style="background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: rgb(255, 255, 204); "&gt;schemaspy&lt;/span&gt;" default="main" basedir="."&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;property name="src.dir" value="src"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;property name="build.dir" value="${src.dir}/build"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;property name="metadata.dir" value="${build.dir}/metadata"/&lt;wbr&gt;&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;property name="kb.dir" value="${build.dir}/kb"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;property name="program.dir" value="${build.dir}/program"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;property name="project.dir" value="${build.dir}/project"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;property name="account.dir" value="${build.dir}/account"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;property name="enterprise.dir" value="${build.dir}/&lt;wbr&gt;enterprise"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;property name="transactions.dir" value="${build.dir}/&lt;wbr&gt;transactions"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;property name="notification.dir" value="${build.dir}/&lt;wbr&gt;notification"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;property name="reconciliation.dir" value="${build.dir}/&lt;wbr&gt;reconciliation"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;property name="people.dir" value="${build.dir}/people"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;property file="build.properties"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;               &lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;target name="clean"&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;delete dir="${build.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;/target&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;&lt;u&gt;&lt;/u&gt; &lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;target name="compile"&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;!-- Compile the java code --&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;mkdir dir="${src.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;mkdir dir="${metadata.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;mkdir dir="${kb.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;mkdir dir="${program.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;mkdir dir="${project.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;mkdir dir="${account.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;mkdir dir="${enterprise.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;mkdir dir="${transactions.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;mkdir dir="${notification.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;mkdir dir="${reconciliation.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;mkdir dir="${people.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;javac srcdir="${src.dir}" destdir="${metadata.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;javac srcdir="${src.dir}" destdir="${kb.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;javac srcdir="${src.dir}" destdir="${program.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;javac srcdir="${src.dir}" destdir="${project.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;javac srcdir="${src.dir}" destdir="${account.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;javac srcdir="${src.dir}" destdir="${enterprise.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;javac srcdir="${src.dir}" destdir="${transactions.dir}"/&lt;wbr&gt;&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;javac srcdir="${src.dir}" destdir="${notification.dir}"/&lt;wbr&gt;&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;javac srcdir="${src.dir}" destdir="${reconciliation.dir}&lt;wbr&gt;"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;javac srcdir="${src.dir}" destdir="${people.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt; &lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;/target&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;               &lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;target name="metadata" depends="compile"&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;echo&amp;gt;starting to generate metadata schema&amp;lt;/echo&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;java jar="schemaSpy_4.1.1.jar" output="${metadata.dir}/&lt;wbr&gt;output.log" error="${metadata.dir}/error.&lt;wbr&gt;log" fork="true"&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-t mssql05-jtds"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-host rapidan"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-port 3006"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-db eats_nz"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-u eats"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-p eats"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-norows"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-s dbo"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-noimplied"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-i (ELEMENT_CATALOG)|(ELEMENT_&lt;wbr&gt;TYPE)|(MODULE_CATALOG)|(FORM_&lt;wbr&gt;CATALOG)|(FORM_ELEMENT)|(&lt;wbr&gt;GROUP_FORM_ELEMENT)|(OBJECT_&lt;wbr&gt;CATALOG)|(OBJECT_TYPE)|(&lt;wbr&gt;MESSAGE_CATALOG)|(MESSAGE_&lt;wbr&gt;CONTENT)"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-hq"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-o ${metadata.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;/java&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;echo&amp;gt;done with schema&amp;lt;/echo&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;/target&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;               &lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;target name="kb" depends="compile"&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;echo&amp;gt;starting to generate kb schema&amp;lt;/echo&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;java jar="schemaSpy_4.1.1.jar" output="${kb.dir}/output.log" error="${kb.dir}/error.log" fork="true"&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-t mssql05-jtds"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-host rapidan"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-port 3006"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-db eats_nz"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-u eats"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-p eats"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-norows"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-s dbo"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-noimplied"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-i (RULE_TYPE)|(RULE_CATALOG)|(&lt;wbr&gt;RULE_SEVERITY)|(KNOWLEDGE_&lt;wbr&gt;BASE)|(KB_ACTION_TYPE)|(&lt;wbr&gt;VALIDATION_RULE_CATALOG)|(&lt;wbr&gt;RESPONSE_CATALOG)"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-hq"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-o ${kb.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;/java&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;echo&amp;gt;done with schema&amp;lt;/echo&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;/target&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;               &lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;target name="program" depends="compile"&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;echo&amp;gt;starting to generate program schema&amp;lt;/echo&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;java jar="schemaSpy_4.1.1.jar" output="${program.dir}/output.&lt;wbr&gt;log" error="${program.dir}/error.&lt;wbr&gt;log" fork="true"&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-t mssql05-jtds"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-host rapidan"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-port 3006"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-db eats_nz"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-u eats"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-p eats"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-norows"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-s dbo"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-noimplied"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-i (ACCT_TYPE)|(ACCT_TYPE_&lt;wbr&gt;PROGRAM)|(ACCOUNT)|(PROGRAM)|(&lt;wbr&gt;PROGRAM_TYPE_CATEGORY_CODE)|(&lt;wbr&gt;PROGRAM_TYPE_CODE)|(PEOPLE_&lt;wbr&gt;RELATIONSHIP)|(PROGRAM_&lt;wbr&gt;PARAMETER)|(PEOPLE)|(PROGRAM_&lt;wbr&gt;STATUS_CODE)|(PROGRAM_&lt;wbr&gt;RELATIONSHIP_TRANSFER)|(&lt;wbr&gt;PROJECT)"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-hq"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-o ${program.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;/java&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;echo&amp;gt;done with schema&amp;lt;/echo&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;/target&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;               &lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;               &lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;target name="project" depends="compile"&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;echo&amp;gt;starting to generate project schema&amp;lt;/echo&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;java jar="schemaSpy_4.1.1.jar" output="${project.dir}/output.&lt;wbr&gt;log" error="${project.dir}/error.&lt;wbr&gt;log" fork="true"&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-t mssql05-jtds"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-host rapidan"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-port 3006"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-db eats_nz"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-u eats"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-p eats"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-norows"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-s dbo"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-noimplied"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-i (PEOPLE)|(PROJECT.*)|(ALLOW_&lt;wbr&gt;VINTAGE)|(CREDIT_PERIOD_TYPE)|&lt;wbr&gt;(LULUCF)|(COUNTRY)|(BLOCK_&lt;wbr&gt;TYPE)|(ENTERPRISE)|(PEOPLE_&lt;wbr&gt;RELATIONSHIP)|(JI_TRACK_TYPE_&lt;wbr&gt;CODE)"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-hq"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-o ${project.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;/java&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;echo&amp;gt;done with schema&amp;lt;/echo&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;/target&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;               &lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;target name="account" depends="compile"&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;echo&amp;gt;starting to generate account schema&amp;lt;/echo&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;java jar="schemaSpy_4.1.1.jar" output="${account.dir}/output.&lt;wbr&gt;log" error="${account.dir}/error.&lt;wbr&gt;log" fork="true"&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-t mssql05-jtds"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-host rapidan"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-port 3006"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-db eats_nz"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-u eats"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-p eats"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-norows"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-s dbo"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-noimplied"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-i (ALLOWANCE_HOLD)|(TRANSACTION)&lt;wbr&gt;|(ACCT_CATEGORY)|(ACCOUNT_&lt;wbr&gt;ENTERPRISE)|(ACCOUNT)|(ACCT_&lt;wbr&gt;TYPE)|(ENTERPRISE)|(ACCT_&lt;wbr&gt;STATUS)|(ACCT_TYPE_PROGRAM)|(&lt;wbr&gt;ACCOUNT_FLOWBACK)|(ACCOUNT_&lt;wbr&gt;COMPLIANCE)|(ACCT_ENTERPRISE_&lt;wbr&gt;STATUS_CODE)"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-hq"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-o ${account.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;/java&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;echo&amp;gt;done with schema&amp;lt;/echo&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;/target&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;               &lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;target name="enterprise" depends="compile"&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;echo&amp;gt;starting to generate enterprise schema&amp;lt;/echo&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;java jar="schemaSpy_4.1.1.jar" output="${enterprise.dir}/&lt;wbr&gt;output.log" error="${enterprise.dir}/&lt;wbr&gt;error.log" fork="true"&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-t mssql05-jtds"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-host rapidan"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-port 3006"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-db eats_nz"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-u eats"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-p eats"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-norows"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-s dbo"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-noimplied"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-i (PEOPLE)|(PEOPLE_RELATIONSHIP)&lt;wbr&gt;|(ADDRESS_RELATIONSHIP)|(&lt;wbr&gt;PROJECT)|(ENTERPRISE)|(&lt;wbr&gt;PROJECT_ENTERPRISE)|(PARTY)|(&lt;wbr&gt;ENTERPRISE_ROLE)|(ACCOUNT)|(&lt;wbr&gt;ACCOUNT_ENTERPRISE)|(&lt;wbr&gt;ENTERPRISE_TYPE_CODE)|(&lt;wbr&gt;ENTERPRISE_GROUP_CODE)|(&lt;wbr&gt;ENTERPRISE_TYPE_CATEGORY_CODE)&lt;wbr&gt;"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-hq"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-o ${enterprise.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;/java&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;echo&amp;gt;done with schema&amp;lt;/echo&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;/target&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;               &lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;target name="transactions" depends="compile"&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;echo&amp;gt;starting to generate transactions schema&amp;lt;/echo&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;java jar="schemaSpy_4.1.1.jar" output="${transactions.dir}/&lt;wbr&gt;output.log" error="${transactions.dir}/&lt;wbr&gt;error.log" fork="true"&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-t mssql05-jtds"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-host rapidan"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-port 3006"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-db eats_nz"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-u eats"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-p eats"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-norows"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-s dbo"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-noimplied"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-i (TRANSACTION_RE.*)|(&lt;wbr&gt;TRANSACTION_STATUS_CODE)|(&lt;wbr&gt;TRANSACTION_STATUS_CATEGORY)|(&lt;wbr&gt;TRANSACTION_SCRATCH)|(&lt;wbr&gt;TRANSACTION_BLOCK_RECEIVED)|(&lt;wbr&gt;TRANSACTION_STATUS)|(&lt;wbr&gt;TRANSACTION)|(ACCOUNT)|(RECON_&lt;wbr&gt;LOG)|(NOTIFICATION)|(&lt;wbr&gt;TRANSACTION_TYPE)|(&lt;wbr&gt;TRANSACTION_BLOCK)|(&lt;wbr&gt;TRANSACTION_CATEGORY)|(PEOPLE)&lt;wbr&gt;"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-hq"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-o ${transactions.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;/java&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;echo&amp;gt;done with schema&amp;lt;/echo&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;/target&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;&lt;u&gt;&lt;/u&gt; &lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;               &lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;target name="notification" depends="compile"&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;echo&amp;gt;starting to generate notification schema&amp;lt;/echo&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;java jar="schemaSpy_4.1.1.jar" output="${notification.dir}/&lt;wbr&gt;output.log" error="${notification.dir}/&lt;wbr&gt;error.log" fork="true"&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-t mssql05-jtds"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-host rapidan"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-port 3006"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-db eats_nz"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-u eats"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-p eats"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-norows"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-s dbo"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-noimplied"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-i (ACCOUNT_NOTIFICATION)|(&lt;wbr&gt;NOTIFICATION)|(NOTIFICATION_&lt;wbr&gt;STATUS)|(NOTIFICATION_STATUS_&lt;wbr&gt;CODE)|(NOTIFICATION_DISPLAY_&lt;wbr&gt;LEVEL)|(NOTIFICATION_TYPE)|(&lt;wbr&gt;LULUCF)|(ALLOW_VINTAGE)|(&lt;wbr&gt;NOTIFICATION_BLOCK)|(PROJECT)|&lt;wbr&gt;(BLOCK_TYPE)"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-hq"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-o ${notification.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;/java&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;echo&amp;gt;done with schema&amp;lt;/echo&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;/target&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;               &lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;target name="reconciliation" depends="compile"&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;echo&amp;gt;starting to generate reconciliation schema&amp;lt;/echo&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;java jar="schemaSpy_4.1.1.jar" output="${reconciliation.dir}/&lt;wbr&gt;output.log" error="${reconciliation.dir}/&lt;wbr&gt;error.log" fork="true"&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-t mssql05-jtds"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-host rapidan"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-port 3006"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-db eats_nz"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-u eats"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-p eats"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-norows"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-s dbo"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-noimplied"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-i (RECON.*)|(TRANSACTION)|(&lt;wbr&gt;SNAPSHOT_LOG)|(SNAPSHOT_TOTAL)&lt;wbr&gt;|(SNAPSHOT_BLOCK)"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-hq"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-o ${reconciliation.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;/java&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;echo&amp;gt;done with schema&amp;lt;/echo&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;/target&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;               &lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;target name="people" depends="compile"&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;echo&amp;gt;starting to generate people schema&amp;lt;/echo&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;java jar="schemaSpy_4.1.1.jar" output="${people.dir}/output.&lt;wbr&gt;log" error="${people.dir}/error.&lt;wbr&gt;log" fork="true"&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-t mssql05-jtds"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-host rapidan"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-port 3006"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-db eats_nz"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-u eats"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-p eats"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-norows"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-s dbo"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-noimplied"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-i (PEOPLE.*)|(PROGRAM)|(PROJECT)&lt;wbr&gt;|(ENTERPRISE)|(ACCOUNT)|(&lt;wbr&gt;RELATIONSHIP_TYPE)"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-hq"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;    &amp;lt;arg line="-o ${people.dir}"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;/java&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                              &lt;wbr&gt;  &amp;lt;echo&amp;gt;done with schema&amp;lt;/echo&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;/target&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;               &lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;                &amp;lt;target name="main" depends="clean,metadata,kb,&lt;wbr&gt;program,project,account,&lt;wbr&gt;enterprise,transactions,&lt;wbr&gt;notification,reconciliation,&lt;wbr&gt;people"/&amp;gt;&lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;               &lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;               &lt;u&gt;&lt;/u&gt;&lt;u&gt;&lt;/u&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; color: rgb(34, 34, 34); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;&amp;lt;/project&amp;gt;&lt;/p&gt; &lt;img src="http://geekswithblogs.net/TomStickel/aggbug/148558.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/BT_Atz-NhAY" height="1" width="1"/&gt;</description><dc:creator>TomStickel</dc:creator><feedburner:origLink>http://geekswithblogs.net/TomStickel/archive/2012/02/02/my-ant-file-for-schemaspy.aspx</feedburner:origLink></item><item><title>Companies that I worked for, I found so many email addresses....</title><link>http://feedproxy.google.com/~r/geekswithblogs/~3/5ugUKi_7kRw/companies-that-i-worked-for-i-found-so-many-email.aspx</link><pubDate>Thu, 02 Feb 2012 07:28:53 GMT</pubDate><guid isPermaLink="false">http://geekswithblogs.net/TomStickel/archive/2012/02/02/companies-that-i-worked-for-i-found-so-many-email.aspx</guid><wfw:comment>http://geekswithblogs.net/TomStickel/comments/148557.aspx</wfw:comment><wfw:commentRss>http://geekswithblogs.net/TomStickel/comments/commentRss/148557.aspx</wfw:commentRss><comments>http://geekswithblogs.net/TomStickel/archive/2012/02/02/companies-that-i-worked-for-i-found-so-many-email.aspx#comment</comments><slash:comments>0</slash:comments><trackback:ping>http://geekswithblogs.net/TomStickel/services/trackbacks/148557.aspx</trackback:ping><source url="http://geekswithblogs.net/TomStickel/rss.aspx">Companies that I worked for, I found so many email addresses....</source><description>Over the years of being a FTE and a contractor I see in my gmail account the list of company email addresses that I have had over the years.  Certainly I wouldn't be able to recall all the email addresses prior to using gmail.  Like me  VarsityGold.com and Dataquick.com email, and Phoenix New Times  email addresses along with  Today.com etc...&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: arial, sans-serif; font-size: 13px; line-height: 15px; background-color: rgba(255, 255, 255, 0.917969); "&gt;tom.&lt;/span&gt;&lt;wbr style="font-family: arial, sans-serif; font-size: 13px; line-height: 15px; background-color: rgba(255, 255, 255, 0.917969); "&gt;&lt;span style="font-family: arial, sans-serif; font-size: 13px; line-height: 15px; background-color: rgba(255, 255, 255, 0.917969); "&gt;stickel@&lt;/span&gt;&lt;wbr style="font-family: arial, sans-serif; font-size: 13px; line-height: 15px; background-color: rgba(255, 255, 255, 0.917969); "&gt;&lt;a href="http://grsgroup.com/" target="_blank" style="color: gray; text-decoration: none; font-family: arial, sans-serif; font-size: 13px; line-height: 15px; background-color: rgba(255, 255, 255, 0.917969); "&gt;grsgroup.&lt;wbr&gt;com&lt;/wbr&gt;&lt;/a&gt;
&lt;/wbr&gt;&lt;/wbr&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color: rgb(85, 85, 85); font-family: arial, sans-serif; font-size: 13px; text-align: left; white-space: nowrap; background-color: rgba(255, 255, 255, 0.917969); "&gt;Thomas.Stickel@sperry.ngc.com&lt;/span&gt;
&lt;/div&gt;&lt;div&gt;&lt;a href="http://tomstickel@pqa.com/" target="_blank" style="color: rgb(17, 85, 204); font-family: arial, sans-serif; font-size: 13px; background-color: rgba(255, 255, 255, 0.917969); "&gt;tomstickel@pqa.com&lt;/a&gt;
&lt;/div&gt;&lt;div&gt;&lt;span style="color: rgb(85, 85, 85); font-family: arial, sans-serif; font-size: 13px; white-space: nowrap; background-color: rgb(255, 255, 255); "&gt;thomas.stickel.ctr@navy.mil&lt;/span&gt;
&lt;/div&gt;&lt;div&gt;&lt;span style="color: rgb(85, 85, 85); font-family: arial, sans-serif; font-size: 13px; text-align: left; white-space: nowrap; background-color: rgba(255, 255, 255, 0.917969); "&gt;Tom.Stickel@suntrust.com&lt;/span&gt;
&lt;/div&gt;&lt;div&gt;&lt;a href="mailto:tom.stickel@nih.gov" target="_blank" style="font-family: arial; font-size: small; "&gt;tom.stickel@nih.gov&lt;/a&gt;
&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: arial, sans-serif; font-size: 13px; line-height: 15px; background-color: rgba(255, 255, 255, 0.917969); "&gt;tom.&lt;/span&gt;&lt;wbr style="font-family: arial, sans-serif; font-size: 13px; line-height: 15px; background-color: rgba(255, 255, 255, 0.917969); "&gt;&lt;span style="font-family: arial, sans-serif; font-size: 13px; line-height: 15px; background-color: rgba(255, 255, 255, 0.917969); "&gt;stickel@&lt;/span&gt;&lt;wbr style="font-family: arial, sans-serif; font-size: 13px; line-height: 15px; background-color: rgba(255, 255, 255, 0.917969); "&gt;&lt;a href="http://scc.virginia.gov/" target="_blank" style="color: gray; text-decoration: none; font-family: arial, sans-serif; font-size: 13px; line-height: 15px; background-color: rgba(255, 255, 255, 0.917969); "&gt;scc.&lt;wbr&gt;virginia.&lt;wbr&gt;gov&lt;/wbr&gt;&lt;/wbr&gt;&lt;/a&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-family: arial, sans-serif; font-size: 13px; line-height: 15px; background-color: rgba(255, 255, 255, 0.917969); "&gt;tom.&lt;/span&gt;&lt;wbr style="font-family: arial, sans-serif; font-size: 13px; line-height: 15px; background-color: rgba(255, 255, 255, 0.917969); "&gt;&lt;span style="font-family: arial, sans-serif; font-size: 13px; line-height: 15px; background-color: rgba(255, 255, 255, 0.917969); "&gt;j.&lt;/span&gt;&lt;wbr style="font-family: arial, sans-serif; font-size: 13px; line-height: 15px; background-color: rgba(255, 255, 255, 0.917969); "&gt;&lt;span style="font-family: arial, sans-serif; font-size: 13px; line-height: 15px; background-color: rgba(255, 255, 255, 0.917969); "&gt;stickel@&lt;/span&gt;&lt;wbr style="font-family: arial, sans-serif; font-size: 13px; line-height: 15px; background-color: rgba(255, 255, 255, 0.917969); "&gt;&lt;a href="http://schwab.com/" target="_blank" style="color: gray; text-decoration: none; font-family: arial, sans-serif; font-size: 13px; line-height: 15px; background-color: rgba(255, 255, 255, 0.917969); "&gt;schwab.&lt;wbr&gt;com&lt;/wbr&gt;&lt;/a&gt;
&lt;/wbr&gt;&lt;/wbr&gt;&lt;/wbr&gt;&lt;/div&gt;&lt;div&gt;tom.stickel@azdhs.gov&lt;/div&gt;&lt;div&gt;&lt;span style="background-color: rgba(255, 255, 255, 0.917969); color: rgb(85, 85, 85); font-family: arial, sans-serif; font-size: 13px; text-align: left; white-space: nowrap; "&gt;Tom.Stickel@trizetto.com&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color: rgb(85, 85, 85); font-family: arial, sans-serif; font-size: 13px; white-space: nowrap; background-color: rgb(255, 255, 255); "&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt; &lt;img src="http://geekswithblogs.net/TomStickel/aggbug/148557.aspx" width="1" height="1" /&gt;&lt;img src="http://feeds.feedburner.com/~r/geekswithblogs/~4/5ugUKi_7kRw" height="1" width="1"/&gt;</description><dc:creator>TomStickel</dc:creator><feedburner:origLink>http://geekswithblogs.net/TomStickel/archive/2012/02/02/companies-that-i-worked-for-i-found-so-many-email.aspx</feedburner:origLink></item></channel></rss>

