9. А если надо портировать
класс?
class Racoon {
private:
std::string m_name;
int m_age;
public:
Racoon(std::string name, int age) {
m_name = name; m_age = age;
}
void greeting() {
std::cout << "Hello! My name is " << m_name <<
". My age is " << m_age << std::endl;
}
};
10. Без проблем!
extern "C"
void Init_test() {
Class rb_cRacoon = define_class<Racoon>("Racoon")
.define_constructor(Constructor<Racoon, std::string, int>())
.define_method("greeting", &Racoon::greeting);
}
!
!
Ruby:
2.0.0-p353 :001 > Racoon.new('Vasya', 2).greeting
Hello! My name is Vasya. My age is 2
=> nil