C++ C++;:重载成员';带关键字运算符的s构造函数
在Halide的源代码中,我阅读了这行代码:C++ C++;:重载成员';带关键字运算符的s构造函数,c++,operator-overloading,overloading,C++,Operator Overloading,Overloading,在Halide的源代码中,我阅读了这行代码: operator halide_type_t() const { return type; } 在一个名为Type的类的定义中,它包含一个成员Type,该成员是halide\u Type\tstruct 我对操作符重载有点困惑,我应该如何使用新函数halide_type_t()?考虑下面的代码: struct number{ int numerator; int denominator; operator float() {
operator halide_type_t() const { return type; }
在一个名为Type
的类的定义中,它包含一个成员Type
,该成员是halide\u Type\t
struct
我对
操作符
重载有点困惑,我应该如何使用新函数halide_type_t()
?考虑下面的代码:
struct number{
int numerator;
int denominator;
operator float() { return numerator*1.0 / denominator }
}
void main(){
number n;
n.numerator = 3;
n.denominator = 4;
float value = n; // here the user-defined conversion occurs
std::cout << value; // 0.75
}
t1.type的值被分配给t。
希望有帮助!:) 参见。它可以像
类型t一样使用;卤化物类型htt=t代码>等。
Type t1;
halide_type_t t = t1;