Okay, we are going to cover this one last time. If you are new to C++ programming you probably don’t know the doo-doo storm I kicked off bringing the subject up earlier in this series of posts. There are a few things which will start a bar fight among programmers. The first is declaring a single editor as the greatest editor of all time. (Besides, you will always find one grizzled troll declaring vi to … C++ 11 and Qt — Part 5 Constructor Initializer List ReligionRead more
C++ 11
C++ 11 and Qt — Part 4 Test Your Compiler
As promised, here is a test to see if your compiler actually handles initialization lists correctly or adopted a “last one in wins” strategy. #ifndef SMALLDATA_H #define SMALLDATA_H class SmallData { public: explicit SmallData( int nuVal); explicit SmallData(); ~SmallData(); private: int m_data = 8; }; #endif // SMALLDATA_H #include “SmallData.h” #include <iostream> SmallData::SmallData() { std::cout << “SmallData Default constructor data value ” << m_data << std::endl; } … C++ 11 and Qt — Part 4 Test Your CompilerRead more
C++ 11 and Qt — Part 3 This is Broken
One of the many reasons medical devices and all systems where adverse outcome for humans are slow to adopt “new” things is that there is so little known about “the wrong way.” You will find many snippets and books on-line professing to show you “the write way” but so few show you the wrong way and explain why it is the wrong way. Most of the token few wrong way post and book examples you … C++ 11 and Qt — Part 3 This is BrokenRead more
C++ 11 and Qt — Part 2 const
This really isn’t a C++ 11 or Qt thing we need to discuss next. It is something which hoses every C/C++ programmer at some point, especially if you are either tired or reading fast. Where const is matters char txt[] = “Red baby buggy bumpers”; char *ptr = txt; // non-const pointer, non-const data const char *ptr = txt; // non-const pointer, const data char * const ptr = txt; // const pointer, non-const data … C++ 11 and Qt — Part 2 constRead more
C++ 11 and Qt — Part 1
The medical device touch screen world tends to stay well behind on “new” standards and features and for good reason. Given the 5+ year FDA mandated testing and approval cycle for things with varying potential of catastrophic patient outcome bleeding edge isn’t a welcome thing. Judging from recent contract postings some devices are locked into Qt 3.3.x because that is what was used when they were first built. Until recently most newer devices were sticking … C++ 11 and Qt — Part 1Read more