The Old New Thing

Practical development throughout the evolution of Windows.

Latest posts

C++/WinRT implementation inheritance: Notes on <CODE>winrt::implements</CODE>, part 7
Feb 27, 2025
Post comments count 0
Post likes count 1

C++/WinRT implementation inheritance: Notes on winrt::implements, part 7

Raymond Chen
Raymond Chen

Inheritance without involving winrt::implements at all.

C++/WinRT implementation inheritance: Notes on <CODE>winrt::implements</CODE>, part 6
Feb 26, 2025
Post comments count 0
Post likes count 1

C++/WinRT implementation inheritance: Notes on winrt::implements, part 6

Raymond Chen
Raymond Chen

Using CRTP to delegate the method.

C++/WinRT implementation inheritance: Notes on <CODE>winrt::implements</CODE>, part 5
Feb 25, 2025
Post comments count 0
Post likes count 0

C++/WinRT implementation inheritance: Notes on winrt::implements, part 5

Raymond Chen
Raymond Chen

When the base class isn't self-contained.

C++/WinRT implementation inheritance: Notes on <CODE>winrt::implements</CODE>, part 4
Feb 24, 2025
Post comments count 0
Post likes count 0

C++/WinRT implementation inheritance: Notes on winrt::implements, part 4

Raymond Chen
Raymond Chen

Simple inheritance of a self-contained implements.

C++/WinRT implementation inheritance: Notes on <CODE>winrt::implements</CODE>, part 3
Feb 21, 2025
Post comments count 9
Post likes count 0

C++/WinRT implementation inheritance: Notes on winrt::implements, part 3

Raymond Chen
Raymond Chen

Discovering the legal inheritance structures for winrt::implements.

C++/WinRT implementation inheritance: Notes on <CODE>winrt::implements</CODE>, part 2
Feb 20, 2025
Post comments count 0
Post likes count 0

C++/WinRT implementation inheritance: Notes on winrt::implements, part 2

Raymond Chen
Raymond Chen

Untangling unwrap_implements_t.

C++/WinRT implementation inheritance: Notes on <CODE>winrt::implements</CODE>, part 1
Feb 19, 2025
Post comments count 0
Post likes count 2

C++/WinRT implementation inheritance: Notes on winrt::implements, part 1

Raymond Chen
Raymond Chen

A closer look at the parameters to the implements template.

Your statement is now available, just two hidden flyouts and five clicks away
Feb 18, 2025
Post comments count 4
Post likes count 6

Your statement is now available, just two hidden flyouts and five clicks away

Raymond Chen
Raymond Chen

Beware of the leopard.

API design note: Beware of adding an “Other” enum value
Feb 17, 2025
Post comments count 7
Post likes count 7

API design note: Beware of adding an “Other” enum value

Raymond Chen
Raymond Chen

What are you going to do when you add a new kind?