【发布时间】:2011-11-14 21:05:03
【问题描述】:
我很困惑...为什么我的赋值运算符没有在这里被调用?
template<typename This>
struct mybase
{
This& operator =(const This &other)
{
__debugbreak(); // The debugger should break here, but doesn't.
return static_cast<This &>(*this):
}
};
struct myderived : mybase<myderived>
{
int x;
};
int main()
{
myderived a = myderived(); // And yes, I know it's redundant...
myderived b = myderived();
a = b;
return 0;
}
【问题讨论】:
标签: c++ operator-overloading assignment-operator