class TControlMorozov : public TControl
{
private:
typedef TControl Super;
public:
using Super::Caption;
using Super::Hint;
};
void translateHint(
TControl* aCtl,
const loc::Dictionary& aDic,
const std::string& aName)
{
if (!aCtl->ShowHint)
return;
const wchar_t* translation = aDic.get((aName + loc::SUFF_HINT).c_str());
if (translation != NULL) {
TControlMorozov* ctlm = reinterpret_cast<TControlMorozov*>(aCtl);
ctlm->Hint = translation;
}
}
class Student {
protected:
int age;
};
class StudentMorozov : public Student {
public:
using Student::age;
};
int main()
{
Student x;
reinterpret_cast<StudentMorozov&>(x).age = 20;
}
class Cb : public Callback {
public:
FileWriter& owner;
Cb(FileWriter& aOwner) : owner(aOwner) {}
void act(int x) override { owner.os << x << std::endl; }
} callback;
Один — вот этот — связан с переводом на VCL.
Два — различные разглючки, связанные с автоподсчётом ширины формы после того, как её переведут.
И один — нестандартный подсчёт ширины столбца в Qt.