In cpp core guidelines: Example of non owning raw pointer I do not understand the following code:
template<typename T>
class X2 {
// ...
public:
owner<T*> p; // OK: p is owning
T* q; // OK: q is not owning
};
what is this syntax owner<T*> p ?