title: What does a '?' following a type mean with generics?
body: <p>I have the following enigmatic declaration in C#:</p>
  
  <pre><code>Dictionary&lt;string, DateTime?&gt; badCameras = new Dictionary&lt;string, DateTime?&gt;();
  </code></pre>
  
  <p>This was written by a programmer no longer here &amp; IS compiling! What ever does the '?' mean following DateTime object? Has it something to do with a struct? I've searched online &amp; am finding nothing? BTW, this is .NET3.5.</p>
  
  <p>Thanks</p>