The Role of #pragma once in Embedded C Development

The Role of #pragma once in Embedded C Development

What is the purpose of #pragma once? To prevent the same header file from being included multiple times, there are two macro implementations in C/C++: one is the #ifndef method; the other is the #pragma once method. In compilers that support both methods, there is not much difference between them. However, there are still some … Read more

Understanding C++: Evolution, Implementation, and Development Tools

Understanding C++: Evolution, Implementation, and Development Tools

In the long history of programming languages, C++ occupies an irreplaceable position with its efficiency, flexibility, and powerful features. From system development to game engines, from embedded devices to high-performance computing, C++ is ubiquitous. This article systematically reviews the evolution of C++ standards, the technical characteristics of implementation vendors, the intrinsic relationship between standards and … Read more

Qt6 CMake: Goodbye qmake, Introduction to CMake

Qt6 CMake: Goodbye qmake, Introduction to CMake

Hi~ This is Weekly Qt, dedicated to sharing valuable Qt knowledge.This will be a series of articles aimed at smoothly introducing everyone to building Qt projects using CMake.qmake is a very important tool in Qt, with a long history and a good reputation. Compared to Makefile, it is very easy to get started, allowing developers … Read more

Building C++ Projects: Creating Libraries with CMake

Building C++ Projects: Creating Libraries with CMake

This time, let’s take a look at how to create dynamic and static libraries using CMake. The technical details differ significantly between creating and using dynamic and static libraries, but for CMake, you only need to specify whether you need a static or dynamic library. This article contains a fair amount of code, mostly framework … Read more

Open Source Project – C++ Implementation of Streaming Binary Protocol for Shanghai and Shenzhen Stock Exchanges

Open Source Project - C++ Implementation of Streaming Binary Protocol for Shanghai and Shenzhen Stock Exchanges

📌 Introduction <span>fin-proto-cpp</span> is an open-source C++ protocol parsing library specifically designed for the financial sector, implementing a low-latency streaming binary protocol codec for the Shanghai Stock Exchange (SSE) and Shenzhen Stock Exchange (SZSE). The project features the following characteristics: âš¡ High-performance encoding and decoding: Processes exchange binary data streams in milliseconds, utilizing a zero-copy … Read more

From Scratch: Building a Lightweight Game Engine Core with C++

From Scratch: Building a Lightweight Game Engine Core with C++

A game engine serves as a bridge between game creativity and hardware performance. Although there are many mature game engines available on the market, understanding and implementing a lightweight game engine core remains a dream for many game developers and C++ enthusiasts. This process not only hones low-level programming skills but also helps clarify the … Read more

Advanced C++ References and Pointers

Advanced C++ References and Pointers

1. Basics of Pointers A pointer is a variable that stores a memory address. Pointer definition and initialization:<span><span>int *p = &a;</span></span> Pointer operations:<span><span>++</span></span>, <span><span>–</span></span>, <span><span>+n</span></span>, <span><span>-n</span></span> The relationship between pointers and arrays: the name of the array is the address of the first element. Exercise: Swap Two Values After swap1: x=10, y=20 After swap2: x=20, … Read more

Choosing and Implementing Three Cross-Platform C++ GUI Frameworks: Practical Comparison of Qt, Dear ImGui, and Elements

Choosing and Implementing Three Cross-Platform C++ GUI Frameworks: Practical Comparison of Qt, Dear ImGui, and Elements

When developing C++ desktop applications, the choice of GUI framework almost determines the development experience and subsequent maintenance costs of the project. For the past decade, Qt and wxWidgets have been mainstream, but in recent years, lightweight and modern solutions have begun to enter the developers’ field of vision, such as Dear ImGui and Elements. … Read more

From Zero to Your First Mini Game: A Comprehensive Guide to C++ Game Development

From Zero to Your First Mini Game: A Comprehensive Guide to C++ Game Development

If you have always wanted to create a game but found programming too complex or didn’t know where to start, this article is prepared for you.C++ is the core language of many game engines (such as Unreal Engine), not only because of its fast execution speed but also because it allows you to have deeper … Read more