在C ++中,给定两个类a
和b
,检查某个表达式的最常用方法是什么
my_a = my_b;
会有意义吗?我想过使用is_convertible
但是没有检测到强制转换操作符。也许它仅适用于原始类型?如果符合以下条件,我希望我的测试能够产生true
a
和b
相同b
可以投放到a
a
有一个接受b
项等等。有没有办法让这样的事情完成?
答案 0 :(得分:6)
bool x = std::is_assignable<decltype(my_a), decltype(my_b)>::value;
答案 1 :(得分:0)
您可以查看is_constructible
,其中包括演员阵容。