Beachten Sie, dass „BindA“ und „BindB" sind vom Datentyp SAME.
Code: Select all
class Legacy : public Template,
public Template
{
public:
Legacy(...);
virtual ~TransformerRatioUpdater();
// inherited from Template
virtual bool set(BindA const& rData);
virtual bool get(BindA & rData) const;
// inherited from Template
virtual bool set(BindB const& rData);
virtual bool get(BindB& rData) const;
private:
...
};
Code: Select all
class MyClass: public Legacy
{
public:
MyClass(...);
bool get(BindA& rData) const override;
bool get(BindB& rData) const override;
virtual ~MyClass();
private:
typedef Legacy super;
};
Ich verwende den IAR-Compiler und er schlägt aus folgenden Gründen fehl Fehler:
Code: Select all
bool get(BindA& rData) const override;
^
"MyClass.hpp",31 Warning[Pe997]: function "Template::get(T &) const [with T=BindA]" is hidden by "MyClass::get" -- virtual function override intended?
bool get(BindB& rData) const override;
^
"MyClass.hpp",32 Warning[Pe997]: function "Template::get(T &) const [with T=BindB]" is hidden by "MyClass::get" -- virtual function override intended?
Ich habe Zweifel.