git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4141 626c5289-ae23-0410-ae9c-e8d60b6d4f22
25 lines
381 B
Ruby
25 lines
381 B
Ruby
# Operator overloading example
|
|
require 'example'
|
|
|
|
include Example
|
|
|
|
a = Complex.new(2, 3)
|
|
b = Complex.new(-5, 10)
|
|
|
|
puts "a = #{a}"
|
|
puts "b = #{b}"
|
|
|
|
c = a + b
|
|
puts "c = #{c}"
|
|
puts "a*b = #{a*b}"
|
|
puts "a-c = #{a-c}"
|
|
|
|
# This should invoke Complex's copy constructor
|
|
e = Complex.new(a-c)
|
|
e = a - c
|
|
puts "e = #{e}"
|
|
|
|
# Big expression
|
|
f = ((a+b)*(c+b*e)) + (-a)
|
|
puts "f = #{f}"
|
|
|