File: runme.cxx

package info (click to toggle)
swig 4.3.0-1
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 46,232 kB
  • sloc: cpp: 54,631; ansic: 29,122; java: 17,530; python: 12,505; cs: 10,369; ruby: 7,232; yacc: 6,477; makefile: 5,965; javascript: 5,520; sh: 5,415; perl: 4,187; php: 3,693; ml: 2,187; lisp: 2,056; tcl: 1,991; xml: 115
file content (41 lines) | stat: -rw-r--r-- 1,185 bytes parent folder | download | duplicates (2)
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
#include <iostream>

#include "example_wrap.h"

int main(int argc, char **argv) {
  { // Block containing the Circle and Square objects.
  std::cout << "Creating some objects from C++:\n";
  example::Circle c(10);
  std::cout << "    Created circle\n";
  example::Square s(10);
  std::cout << "    Created square\n";

  std::cout << "\nA total of " << example::Shape::nshapes() << " shapes were created\n";

  c.x(20);
  c.y(30);

  example::Shape& shape = s;
  shape.x(-10);
  shape.y(5);

  std::cout << "\nHere is their current positions:\n";
  std::cout << "    Circle = (" << c.x() << " " << c.y() << ")\n";
  std::cout << "    Square = (" << s.x() << " " << s.y() << ")\n";

  std::cout << "\nHere are some properties of the shapes:\n";
  example::Shape* shapes[] = {&c, &s};
  for (int i = 0; i < 2; i++) {
    std::cout << "    " << (i ? "Square" : "Circle") << "\n";
    std::cout << "    area      = " << shapes[i]->area() << "\n";
    std::cout << "    perimeter = " << shapes[i]->perimeter() << "\n";
  }

  std::cout << "\nGuess I'll clean up now\n";
  }

  std::cout << example::Shape::nshapes() << " shapes remain\n";
  std::cout << "Goodbye from C++\n";

  return 0;
}