Guide to the C# Programming Language - Puzzling C#
summary
Shows concrete gotchas: a = b + c parses so the parentheses bind to the right-hand expression producing 240 not a mistaken grouping; object initializers and property initializers run for the most derived type before base constructors so virtual calls from base constructors observe derived values unless a setter is absent and the base writes its backing field; async void vs Task can drop exceptions and crash console apps, so prefer returning Task; user defined conversions let the compiler insert standard numeric conversions* (decimal→char) and silently chain operators.
AI-written summary · about
chapters (8)
- 0:00Talk overview
- 1:53Why puzzling C# matters
- 2:39Arithmetic and precedence
- 9:31Initialization and inheritance
- 17:51Async pitfalls and void dangers
- 28:50Object initialization and required
- 35:47Type safety and conversions
- 44:32Conclusion and Q&A








