Home Accessibility Courses Twitter The Mouth Facebook Resources Site Map About Us Contact
 
Python and Tcl - public course schedule [here]
Private courses on your site - see [here]
Please ask about maintenance training for Perl, PHP, Lua, etc
 
C++ objects - some short, single file demonstrations

Delegate on a C and C++ training courseOne of the key features of the object oriented paradigm is that it provides a system through which code that's naturally associated with one type of data is accessed through a single closely defined and controlled set of calls (its API / Application Programmer Interface) ... so it's natural on a larger project for each data type or group of data types to be separated into their own project / file(s) / teams, allowing for semiasynchronous maintainance. In other words - split, data type by datatype, into managable chunks.

What a great principle! But for a small demo on a course, splitting into multiple files would cause an awful lot of window switching that would obfuscate the initial logic and design elements (or call for an awful lot of projection screen estate!).
So - from yesterday's C++ course - three Object Oriented Examples in C++ which are built in single files, with strong comment lines indication where the application will naturally split across files later.

Firstly principle of an object - a tiny program which does no more that create a really basic object with a property, then look up that property. That's followed by multiple classes and polymorphism, C++ style; virtual methods in a base class, an array of object pointers, and calls to methods of the same name, but in different classes, which the language itself resolves dynamically at runtime. The final one of these three examples shows some more advanced features such as overloading and deconstructors - things which you'll need from time to time, but not often in such a short program as this.

Rather than continue to grow this example, I illustrated the technique for comparing objects in C++ in a separate example [here] at the end of the day - that brought in a static method to the equation too. There's a fuller description of that [here], and a further source example - showing it split into multiple files (what I'll be doing from 9 a.m. this morning) [here].

(written 2011-01-07, updated 2011-01-08)

 
Associated topics are indexed as below, or enter http://melksh.am/nnnn for individual articles
C233 - C and C based languages - OO in C++ - beyond the basics
  [4560] Variables, Pointers and References - C and C++ - (2015-10-29)
  [4559] When do I use the this keyword in C++? - (2015-10-29)
  [4377] Designing a base class and subclasses, and their extension, in C++ - (2015-01-01)
  [4375] Final examples for 2014 - and a look at our 2015 training course options - (2014-12-31)
  [4356] Object factories in C++, Python, PHP and Perl - (2014-12-19)
  [3979] Extended and Associated objects - what is the difference - C++ example - (2013-01-18)
  [3811] Associated Classes - using objects of one class within another - (2012-07-21)
  [3508] Destructor methods in C++ - a primer - (2011-11-05)
  [3251] C++ - objects that are based on other objects, saving coding and adding robustness - (2011-04-17)
  [3244] C and C++ - preprocess, compile, load, run - what each step is for - (2011-04-12)
  [3142] Private and Public - and things between - (2011-01-22)
  [3124] C++ - putting the language elements together into a program - (2011-01-08)
  [3056] C++ - a complete example with polymorphism, and how to split it into project files - (2010-11-16)
  [2845] Objects and Inheritance in C++ - an easy start - (2010-07-01)
  [2577] Complete teaching example - C++, inheritance, polymorphism - (2010-01-15)
  [1819] Calling base class constructors - (2008-10-03)
  [1674] What a lot of files! (C++ / Polymorphism demo) - (2008-06-12)
  [1572] C - structs and unions, C++ classes and polymorphism - (2008-03-13)
  [1217] What are factory and singleton classes? - (2007-06-04)
  [925] C++ - just beyond the basics. More you can do - (2006-11-14)
  [831] Comparison of Object Oriented Philosophy - Python, Java, C++, Perl - (2006-08-13)
  [801] Simple polymorphism example - C++ - (2006-07-14)
  [798] References and Pointers in C++ - (2006-07-10)


Back to
When is a program complete?
Previous and next
or
Horse's mouth home
Forward to
C++ - putting the language elements together into a program
Some other Articles
Burger me!
Car Parking in Melksham - thoughts on the proposed scheme, and wider thoughts too
The family is defunct. Long live the family.
C++ objects - some short, single file demonstrations
When is a program complete?
New year, new C Course
Learning to write good programs in C and C++ - separating out repeated code
TransWilts - some things to see and do
Arrays of arrays - or 2D arrays. How to program tables.
4759 posts, page by page
Link to page ... 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, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96 at 50 posts per page


This is a page archived from The Horse's Mouth at http://www.wellho.net/horse/ - the diary and writings of Graham Ellis. Every attempt was made to provide current information at the time the page was written, but things do move forward in our business - new software releases, price changes, new techniques. Please check back via our main site for current courses, prices, versions, etc - any mention of a price in "The Horse's Mouth" cannot be taken as an offer to supply at that price.

Link to Ezine home page (for reading).
Link to Blogging home page (to add comments).

You can Add a comment or ranking to this page

© WELL HOUSE CONSULTANTS LTD., 2019: 404 The Spa • Melksham, Wiltshire • United Kingdom • SN12 6QL
PH: 01225 708225 • EMAIL: info@wellho.net • WEB: http://www.wellho.net • SKYPE: wellho

PAGE: http://www.wellho.net/mouth/3123_C-o ... tions.html • PAGE BUILT: Sat May 27 16:49:10 2017 • BUILD SYSTEM: WomanWithCat