ADT in C style

  struct ctr { int n; }
  
  void ctr_init(ctr& c) { c.n = 0; }
  void ctr_add(ctr& c, int i) { c.n = c.n + i; }
  int ctr_val(ctr& c) { return c.n; }
  

Usage

  ctr c; ctr_init(c); ctr_add(c,1); 
  ctr* p = new ctr; ctr_init(*p); ctr_add(*p);  
  

slide: C++ -- objects (1)