Skip to content

C++ Get the RSS Feed

Content related to C++

Clazy An open source Clang plugin allowing it to understand Qt semantics

Clazy is a Clang plugin which extends the compiler with over 50 warnings related to Qt best practices ranging from unneeded memory allocations to API misuse. It’s an opensource project spawned by KDAB’s R&D efforts for better C++ tooling.

At KDAB, we have a pretty cool Continuous Integration infrastructure to take care of our customers’ code: the CI team is constantly writing new extensions to support all kinds of linters, static checkers, sanitizers and code coverage tools. So when senior …

Hotspot A GUI for perf report

Hotspot is a KDAB R&D project to create a standalone GUI for performance data. It is a replacement for perf report. Hotspot’s GUI takes a file, parses and evaluates its contents and then displays the result in a graphical way.

Hotspot’s initial goal was to provide a UI like KCachegrind around Linux perf. In future versions we will be supporting various other performance data formats under this umbrella. You can find the source code on our GitHub

Nailing 13 signal and slot mistakes with clazy 1.3

Today I want to share 13 mistakes regarding signals, slots and connect statements and how to find them at compile time with clazy, our open-source static-analyzer for Qt.

Clazy is a compiler plugin which generates warnings related to Qt. You can read more about it in our previous blog posts:

Today’s instalment is exclusively about signal/slots, since …

New in Qt 5.10: QThread::create

If you are using Qt and you need to run some code in a separate thread, chances are that you are using QThread for the job. QThread is a very old class in Qt, making its first appearance in Qt 2.2, released on the 22nd of September 2000. Its responsibility is to start a new thread, and let you execute code in that thread.

There are two main ways of running code in a separate thread using QThread:

  1. subclassing

An Unexpected C++ Journey Daniel Vrátil's informal debut at KDAB

Some of you may know that KDAB employees enjoy flexibility on working hours as well as location, and some choose to work from home, with the opportunity to share childcare, do part-time study or simply enjoy an out-of-the-way location. All that’s required is a decent bandwidth for KDAB work.

About once a year, all of KDAB employees come together so we can get to know each other in a different way. Among other things, it allows new members of the …

Update to Linux perf report Improved handling of inlined frames

Linux perf is an immensely useful and powerful tool suite for profiling of C/C++ applications. I have used it extensively and successfully on various customer projects, both for desktop applications as well as automotive or industrial projects targeting low-end embedded Linux targets running on ARM hardware.

The biggest problem with perf really is its usability, or lack thereof. Over the years I have tried my best in educating people on how to use the tool suite, both in form of …

Clazy Results Visualizer for Qt Web UI to view clazy and gcc warnings

Clazy is a clang plugin which extends the compiler with over 50 warnings related to Qt best practices ranging from unneeded memory allocations to API misuse. It’s an opensource project spawned by KDAB’s R&D efforts for better C++ tooling.

Today, we’re proud to announce a Clazy Web UI to view all warnings emitted by Clazy, as well as normal gcc/clang issues.

Furthermore, we’ll be hosting it publicly for the Qt code base. This means that you can now head …

Hotspot v1.1.0 adds timeline and recording features New release of the GUI for the Linux perf profiler

Close to three months after the initial hotspot release, I’m happy to announce the release of version 1.1.0. Quick recap: Hotspot is a graphical frontend to the Linux perf profiler suite. It allows you to visually analyze files with the built-in Flame Graph and the Bottom-Up, Top-Down, or Caller-Callee data tables. It is a free open source R&D project by KDAB, you can find the code on GitHub.

Version 1.1.0 adds two important new features to this …

Clang Tidy, part 2: Integrate qmake and other build systems using Bear Automated refactoring of your source code using powerful open-source tooling


This article is part of a blog series about Clang Tidy. In the previous article we learned about the general usage of Clang Tidy to automatically refactor source code…

By continuing to use the site, you agree to the use of cookies. More information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.