Хотя вызов метода не-const
для экземпляра const
, вероятно, нецелесообразен.Однако если вы хотите вызвать метод const
для экземпляра, отличного от const
, просто используйте приведение.См. Следующую программу для примера:
#include <iostream>
class ConstTest {
public:
void cows() const {
std::cout << "const method call" << std::endl;
};
void cows() {
std::cout << "non-const method call" << std::endl;
}
};
int main() {
ConstTest ct;
ct.cows(); // Prints "non-const method call"
static_cast<const ConstTest &>(ct).cows(); // Prints "const method call"
}