gpt4 book ai didi

c++ - 如何测试B类是否派生自A类?

转载 作者:可可西里 更新时间:2023-11-01 18:09:43 26 4
gpt4 key购买 nike

更具体地说,假设我有一个带有参数 AB 的类模板,并且我希望有一个编译器错误(当模板被实例化时)如果 B 不是从 A 派生的。

template<class A, class B>
class Foo
{
// static_assert(B is derived from A)
};

最佳答案

这已经被问过很多次了,但是很简单我会再次发布解决方案:

~Foo()
{
A* p = (B*)0; // B is required to be a subtype of A
}

关于c++ - 如何测试B类是否派生自A类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4532281/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com