定义运算符<<内部类
请考虑以下代码:
class MyClass
{
template <typename Datatype>
friend MyClass& operator<<(MyClass& MyClassReference, Datatype SomeData);
// ...
};
template <typename Datatype>
MyClass& operator<<(MyClass& MyClassReference, Datatype SomeData)
{
// ...
}
如何在课堂内定义operator<<
,而不是作为朋友函数?像这样的东西:
class MyClass
{
// ...
public:
template <typename Datatype>
MyCLass& operator<<(MyClass& MyClassReference, Datatype SomeData)
{
// ...
}
};
上面的代码产生编译错误,因为它接受两个参数。删除MyClassReference
参数可以修复错误,但我的代码依赖于该参数。 MyClassReference
是否相当于*this
?
没有找到相关结果
已邀请:
3 个回复
贡炮逗握惫
在课堂内。这是一个类
的方法。非静态方法有一个名为
指针的隐式参数。
指针是指向调用该方法的对象的指针。您不需要
参数,因为
指针符合该目的。 将该方法声明更改为
。
扇献隙
定义为成员函数时,
基本上相当于你在运算符中定义的第一个参数。
柑恫祟