tailieunhanh - Lecture Visual programming: Chapter 17 - Muhammad Bilal Zafar

The following will be discussed in this chapter: Context-free grammars, formal definition of a CFG, notational conventions, derivations, parse trees and derivations, ambiguity, verifying the language generated by a grammar, context-free grammars vs regular expressions, writing a grammar, lexical vs syntactic analysis, eliminating ambiguity, elimination of left recursion. | LESSON 17 Overview of Previous Lesson(s) Over View OOP A class is a data type that you define to suit customized application requirements. A class can be designed to represent something abstract, such as a complex number, which is a mathematical concept, or a truck, which is physical. Cbox class 3 Over View 4 Over View 5 Inheritance Inheritance is an essential part of OOP It is the process of creating new classes, called derived classes, from existing or base classes. The derived class inherits all the capabilities of the base class & can also add its own functionality. Over View 6 Advantages of Inheritance Reusability Extensibility Data hiding Overriding Over View. 7 Over View 8 Strings The string class type that is defined in the system namespace represents a string in C++/CLI. String creation System::String^ saying(L"Many hands make light work."); Over View 9 Tracking Handles: A tracking handle is a form of pointer used to reference variables defined on the CLR heap. A . | LESSON 17 Overview of Previous Lesson(s) Over View OOP A class is a data type that you define to suit customized application requirements. A class can be designed to represent something abstract, such as a complex number, which is a mathematical concept, or a truck, which is physical. Cbox class 3 Over View 4 Over View 5 Inheritance Inheritance is an essential part of OOP It is the process of creating new classes, called derived classes, from existing or base classes. The derived class inherits all the capabilities of the base class & can also add its own functionality. Over View 6 Advantages of Inheritance Reusability Extensibility Data hiding Overriding Over View. 7 Over View 8 Strings The string class type that is defined in the system namespace represents a string in C++/CLI. String creation System::String^ saying(L"Many hands make light work."); Over View 9 Tracking Handles: A tracking handle is a form of pointer used to reference variables defined on the CLR heap. A tracking handle is automatically updated if what it refers to is relocated in the heap by the garbage collector. Variables that reference objects and arrays on the heap are always tracking handles. Over View 10 Tracking references A tracking reference is similar to a native reference, except that the address it contains is automatically updated if the object referenced is moved by the garbage collector. Interior pointers An interior pointer is a C++/CLI pointer type to which you can apply the same operation as a native pointer. TODAY’S LESSON 11 Contents Inheritance Protected Members Access Levels Friends Classes Virtual Functions Polymorphism Pointer with Objects References to Virtual Functions CLR Programming Functions Variable number of Arguments Arguments to main() 12 Protected Members 13 In addition to the public and private access specifiers for members of a class we can also declare members of a class as protected . Within the class, the protected keyword has the same effect as the