2010-03-26 3 views
0

Y at-il un corps peut confirmer la description here est vrai? Mon expérience est que je ne peux pas utiliser Example::Vector.new du tout.c struct carte à ruby ​​en utilisant SWIG

structs C/C++ sont enroulés sous forme de classes Ruby , avec les méthodes d'accès (à savoir "getters" et "poseurs") pour l'ensemble de les membres de la structure. Par exemple, cette déclaration struct :

struct Vector { 
double x, y; 
}; 

est enveloppé comme classe Vector, avec méthodes d'instance Ruby x, x = y, et y =. Ces méthodes peuvent être utilisées pour accéder à partir des données de structure Ruby comme suit:

$ irb 
irb(main):001:0> require 'Example' 
true 
irb(main):002:0> f = Example::Vector.new 
#<Example::Vector:0x4020b268> 
irb(main):003:0> f.x = 10 
nil 
irb(main):004:0> f.x 
10.0 

Répondre

0

résolu. Je devrais également besoin d'ajouter la définition de type dans le fichier example.i, il suffit d'inclure le .h n'est pas suffisant.

Questions connexes