<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>C&#43;&#43; on Zhibo&#39;s Blog</title>
    <link>https://libz.dev/categories/c&#43;&#43;/</link>
    <description>Recent content in C&#43;&#43; on Zhibo&#39;s Blog</description>
    <generator>Hugo -- gohugo.io</generator>
    <copyright>Copyright © 2016-{year} Zhibo Li. All Rights Reserved.</copyright>
    <lastBuildDate>Wed, 07 Aug 2024 10:07:07 +0100</lastBuildDate><atom:link href="https://libz.dev/categories/c++/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>A Micro Control Flow DSL for C&#43;&#43; template parameters</title>
      <link>https://libz.dev/posts/meta-control-flow-primitive/</link>
      <pubDate>Wed, 07 Aug 2024 10:07:07 +0100</pubDate>
      
      <guid>https://libz.dev/posts/meta-control-flow-primitive/</guid>
      <description>C++ metaprogramming and templates are powerful features that allow you to write code that operates on types and constants at compile time. This capability can lead to more flexible, efficient, and reusable code.
Templates are a feature in C++ that allow functions and classes to operate with generic types. This means you can write a function or class that works with any data type. Templates can be of two types: function templates and class templates.</description>
    </item>
    
    <item>
      <title>Runtime data container switch in C&#43;&#43;</title>
      <link>https://libz.dev/posts/runtime-container-swap/</link>
      <pubDate>Thu, 01 Aug 2024 10:07:07 +0100</pubDate>
      
      <guid>https://libz.dev/posts/runtime-container-swap/</guid>
      <description>Data structures are of vital importance in computer programs. When programmers are going to optimise the programs, they generally either improve their algorithms, or perform optimisations on data structures, from the implementation of data structures to the access methods over the data structures. Recently, there have been a few research on optimising an existing computer program by switching out the data structures based on different criteria. For example, the size of data often impact the proper choice of a data structure - there are vectors that are tailored for a small amount data, and that they are not suitable to store large amount of data such as all the data of the customers in Amazon.</description>
    </item>
    
    <item>
      <title>Introduction to BerkeleyDB STL and write the first line of code with </title>
      <link>https://libz.dev/posts/bstl-hello-world/</link>
      <pubDate>Sun, 22 Jan 2023 00:00:00 +0000</pubDate>
      
      <guid>https://libz.dev/posts/bstl-hello-world/</guid>
      <description>I have given a brief introduction to STL and its implementations. From this post on, I will focus on one of the implementations - BerkeleyDB STL. Compared to other implementations such as libc++/libstdc++, BerkeleyDB STL is unique - it is based on BerkeleyDB and leverages all the advantages of a database implementation. Thanks to the developers of BerkeleyDB STL, most of the time we can program just like we would with the common implementations mentioned before because the database-based STL is almost 99% compatible with the standard.</description>
    </item>
    
    <item>
      <title>Introduction to Parallel Computing Libraries for C&#43;&#43;</title>
      <link>https://libz.dev/posts/intro-par-libs-cpp/</link>
      <pubDate>Tue, 10 Jan 2023 11:00:00 +0000</pubDate>
      
      <guid>https://libz.dev/posts/intro-par-libs-cpp/</guid>
      <description>Parallel computing has become one of the essential techniques among industry and academy. As a programmer, not only understanding the theory of parallel computing is important, but learn how to work with some parallel computing library is also critical. Today, I am going to introduce a list of parallel computing libraries for C++ and hopefully would benefit to C++ programmers!
Firstly, I would like to divide parallel computing libraries into several categories and thus I can introduce them one by one.</description>
    </item>
    
    <item>
      <title>Introduction to C&#43;&#43; Standard Template Library and its implementations</title>
      <link>https://libz.dev/posts/bstl-intro/</link>
      <pubDate>Thu, 29 Dec 2022 00:00:00 +0000</pubDate>
      
      <guid>https://libz.dev/posts/bstl-intro/</guid>
      <description>I will start a new series of introduction - C++ programming and their libraries! If anyone has ever heard about C++ programming, their may also know Standard Template Library, or more concisely, STL. There is no doubt that STL is extremely important in C++ programming, but be careful as many languages have their standard libraries, C++ also has its standard library, but STL and the standard library are different.
C++ STL is implemented based on C++ template, or metaprogramming.</description>
    </item>
    
  </channel>
</rss>
