Как я могу определить класс шаблона, который предоставляет целочисленную константу, представляющую «глубину» (указателя) типа, предоставленного в качестве входного аргумента шаблона? Например, если класс был назван Depth
, было бы верно следующее:
Depth<int ***>::value == 3
Depth<int>::value == 0