Why can I derived from a templated/generic class based on that type in C# / C++
-
01-10-2019 - |
문제
Title probably doesn't make a lot of sense, so I'll start with some code:
class Foo : public std::vector<Foo>
{
};
...
Foo f;
f.push_back( Foo() );
Why is this allowed by the compiler? My brain is melting at this stage, so can anyone explain whether there are any reasons you would want to do this? Unfortunately I've just seen a similar pattern in some production C# code and wondered why anyone would use this pattern.
해결책
can anyone explain whether there are any reasons you would want to do this?
제휴하지 않습니다 StackOverflow