Copyright © 2024 Bytellect LLC. All Rights Reserved.
Bytellect LLC continues working through the COVID-19 pandemic. Following local and CDC recommendations for the health and safety of our clients and local community, we have temporaily suspended on-site training, on-site consulting/support, and in-person meetings. Please contact us via email or through our secure contact form to discuss your requirements. Thank you for your understanding.
Here are the downloads associated with recent Desert Code Camp sessions we have conducted. All downloads are in ZIP file format. If you’d like to be notified whenever we add new material to this page, subscribe to our mailing list. If you are having trouble downloading the materials from this page, please contact us.
Catching and handling "thrown" exceptions in C++ is well documented. But what if you need to catch Windows access violations, data misalignments, divisions by zero, illegal instructions, and a variety of floating point exceptions? You could use Microsoft’s SEH mechanism, but it’s not well integrated with standard C++ exception handling. In this session, you’ll see how to catch Windows exceptions, on a per-thread basis, as standard C++ exceptions derived from the std::exception class. We’ll use Visual Studio 2019 Community edition IDE and the Visual C++ compiler. (Knowledge of standard C++ exception handling is recommended.)
How do you know when you’re not a beginning programmer anymore? We'll cover 16 attributes of an experienced, professional programmer (or software developer or software engineer or whatever the job title of the day happens to be). If you’ve got at least 10 of these 16 attributes, you’re probably not a beginner anymore. You should set your sights on all of these, not just the minimum 10. Some are relatively straightforward to achieve, while others require a good measure of diligence, patience, and humility. These attributes are based on decades of experience as both a software engineer and a manager of software engineers at all levels.
Are users of your C structures reaching in and placing your structures in an invalid or inconsistent state? Are changes you make to your structures breaking your users’ code? Do you need to make some of your structure members read-only, write-only, read-write, or completely invisible to your users? Using opaque pointers in C can help you a achieve a clean interface that gives you full control over the internal implementation and visibility of your structure members. We’ll use Visual Studio 2019 Community edition and the C compiler built into Visual C++, but the techniques can be applied to a wide variety of C compiler implementations. (Knowledge of C structures and pointers is recommended.)