File: runme.rb

package info (click to toggle)
cableswig 0.1.0%2Bcvs20100501-1
  • links: PTS
  • area: main
  • in suites: squeeze
  • size: 16,068 kB
  • ctags: 10,732
  • sloc: cpp: 34,106; ansic: 32,676; yacc: 3,999; makefile: 3,791; python: 2,387; ruby: 2,063; lisp: 1,841; java: 1,817; tcl: 1,097; php: 908; ml: 804; perl: 686; cs: 206; sh: 155
file content (48 lines) | stat: -rw-r--r-- 1,405 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# Example using pointers to member functions

require 'example'

# Get the pointers

area_pt = Example::areapt
perim_pt = Example::perimeterpt

puts "area_pt  = #{area_pt}"
puts "perim_pt = #{perim_pt}"

# Create some objects

c = Example::Circle.new(4)
s = Example::Square.new(10)

# Do some calculations

puts "Circle area  = #{Example::do_op(c, area_pt)}"
puts "Circle perim = #{Example::do_op(c, perim_pt)}"
puts "Square area  = #{Example::do_op(s, area_pt)}"
puts "Square perim = #{Example::do_op(s, perim_pt)}"

puts "areavar      = #{Example::areavar}"
puts "perimetervar = #{Example::perimetervar}"

# Try the variables
puts "Circle area  = #{Example::do_op(c, Example::areavar)}"
puts "Circle perim = #{Example::do_op(c, Example::perimetervar)}"
puts "Square area  = #{Example::do_op(s, Example::areavar)}"
puts "Square perim = #{Example::do_op(s, Example::perimetervar)}"

# Modify one of the variables
Example::areavar = perim_pt

puts "Circle perimeter = #{Example::do_op(c, Example::areavar)}"

# Try the constants

puts "Example::AREAPT = #{Example::AREAPT}"
puts "Example::PERIMPT= #{Example::PERIMPT}"
puts "Example::NULLPT = #{Example::NULLPT}"

puts "Circle area  = #{Example::do_op(c, Example::AREAPT)}"
puts "Circle perim = #{Example::do_op(c, Example::PERIMPT)}"
puts "Square area  = #{Example::do_op(s, Example::AREAPT)}"
puts "Square perim = #{Example::do_op(s, Example::PERIMPT)}"