C++ Logo

STD-PROPOSALS

Advanced search

Subject: Re: [std-proposals] Friend namespace
From: Giuseppe D'Angelo (giuseppe.dangelo_at_[hidden])
Date: 2020-12-06 08:57:50


On 06/12/2020 15:29, Arthur O'Dwyer via Std-Proposals wrote:
> Physically speaking, anybody in any .cpp file can add a new member to
> any namespace.

This is true "physically", but not true logically -- usual disclaimer
that you cannot logically add stuff in namespace std, and one could
impose a similar rule about namespaces under their own control.

As another possible use case, in Qt we actually wanted to befriend a
namespace so we could define objects in such a namespace, but not expose
the relevant constructor as public (ended up not documenting the
constructor):

> https://github.com/qt/qtbase/blob/dev/src/gui/painting/qcolor.h#L296
> https://github.com/qt/qtbase/blob/dev/src/gui/painting/qcolor.h#L342

My 2 c,

-- 
Giuseppe D'Angelo | giuseppe.dangelo_at_[hidden] | Senior Software Engineer
KDAB (France) S.A.S., a KDAB Group company
Tel. France +33 (0)4 90 84 08 53, http://www.kdab.com
KDAB - The Qt, C++ and OpenGL Experts



STD-PROPOSALS list run by std-proposals-owner@lists.isocpp.org

Standard Proposals Archives on Google Groups