[Skip Navigation] [CSUSB] / [CNS] / [CSE] / [R J Botting] / [CSci202] / 16q
[Text Version] [Syllabus] [Schedule] [Glossary] [Resources] [Grading] [Contact] [Question] [Search ]
Notes: [01] [02] [03] [04] [05] [06] [07] [08] [09] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20]
Labs: [01] [02] [03] [04] [05] [06] [07] [08] [09] [10]
Mon May 23 17:34:35 PDT 2011

Contents


    CS202 session 16 Scoping

      Previous -- Exceptions

      [ 15.html ]

      Preparation

      Study Chapter 18 and do Review Questions.

      Notes: In practice avoid protected data members and private inheritance!

      Due in

      Hand in one even-numbered question+answer at the start of class.

      Bonus for Perfect Project 3 today at start of class.

      Class Work

        Dr Schuberts Explanation of friends

        What is encapsulation in Computer Programming

        List as many Name Scopes as you can

        What is shadowing in C++ and is it a good thing

        How can you avoid polluting the global scope with constants

        What does this function return when called 4 times as shown

         int f() {static int c=0; c=c+1; return c; }
         ...
         		cout << f() << "\n";
         		cout << f() << "\n";
         		cout << f() << "\n";
         		cout << f() << "\n";

        What does this return when called 4 times

         int f() {       int c=0; c=c+1; return c; }

        What is the best way to give only derived classes access to data in a base class

        How does a function become a friend of a class

        Give a well known example of a nested class in the Standard Template Library

        When do you create namespaces

      Next -- Class Hierarchies

      [ 17.html ]

      Next project due in next class. Next quiz in next class and on chapters 16,17,18, and P3.


      (2011 Memorial Day): Holiday on Monday.

    Glossary

  1. accessor::=`A Function that accesses information in an object with out changing the object in any visible way". In C++ this is called a "const function". In the UML it is called a query.
  2. Algorithm::=A precise description of a series of steps to attain a goal, [ Algorithm ] (Wikipedia).
  3. class::="A description of a set of similar objects that have similar data plus the functions needed to manipulate the data".
  4. constructor::="A Function in a class that creates new objects in the class".
  5. Data_Structure::=A small data base.
  6. destructor::=`A Function that is called when an object is destroyed".
  7. Function::programming=A selfcontained and named piece of program that knows how to do something.
  8. Gnu::="Gnu's Not Unix", a long running open source project that supplies a very popular and free C++ compiler.
  9. mutator::="A Function that changes an object".
  10. object::="A little bit of knowledge -- some data and some know how". An object is instance of a class.
  11. objects::=plural of object.
  12. OOP::="Object-Oriented Programming", Current paradigm for programming.
  13. Semantics::=Rules determining the meaning of correct statements in a language.
  14. SP::="Structured Programming", a previous paradigm for programming.
  15. STL::="The standard C++ library of classes and functions" -- also called the "Standard Template Library" because many of the classes and functions will work with any kind of data.
  16. Syntax::=The rules determining the correctness and structure of statements in a language, grammar.
  17. Q::software="A program I wrote to make software easier to develop",
  18. TBA::="To Be Announced", something I should do.
  19. TBD::="To Be Done", something you have to do.
  20. UML::="Unified Modeling Language".
  21. void::C++Keyword="Indicates a function that has no return".

End