Я уверен, что ответ отрицательный, но так как это было бы прекрасно, я все равно задам вопрос.Можно ли умножать аргумент функции?
Пример:
class Serializable
{
public:
virtual void serialize() = 0;
};
class Unserializable
{
public:
virtual void unserialize() = 0;
};
class A : public Serializable
{
public:
virtual void serialize()
{
}
};
class B : public A, public Unserializable
{
public:
virtual void unserialize()
{
}
};
Теперь, есть какой-то способ создать функцию с одним аргументом, который является как экземпляр Serializable и Unserializable таким образом, что объект класса B может быть передан (без, конечно, ссылки на производный тип B)? Что-то вроде:
void readAndWrite(Serializable_Unserializable& object);
Нет, нет, но вы можете легко передать два параметра и получить более полезную функцию в сделке. – molbdnilo
Не думал так, и, хотя я полагаю, что это правда, в моем фактическом использовании это может привести к множеству параметров, в то время как концептуально для всех из них будет передан только один объект. –
Большое спасибо за быстрый комментарий! –