Class notes Computer science 083 (Computerscience083)
11 views 0 purchase
Course
Computer science 301 (COMPUTERSCIENCE083)
Institution
Computer Learning Center
"Hello everyone! I am excited to share my computer science notes with you all. These notes cover a wide range of topics including programming languages, algorithms, data structures, and more. I have spent countless hours compiling these notes from various sources and personal experience, and I hope...
Hand Writing Notes
ON
Object Oriented Programming Using C++
Prepared by
Md. Soheb
Notes by Soheb for Computer science and DSA courses
, Object Oriented Programming
Module I
Introduction to object oriented programming, user defined types, structures, unions,
polymorphism, encapsulation. Getting started with C++ syntax, data-type, variables,
strings, functions, default values in functions, recursion, namespaces, operators, flow
control, arrays and pointers.
Module II
Abstraction mechanism: Classes, private, public, constructors, destructors, member data,
member functions, inline function, friend functions, static members, and references.
Inheritance: Class hierarchy, derived classes, single inheritance, multiple, multilevel, hybrid
inheritance, role of virtual base class, constructor and destructor execution, base
initialization using derived class constructors.
Polymorphism: Binding, Static binding, Dynamic binding, Static polymorphism: Function
Overloading, Ambiguity in function overloading, Dynamic polymorphism: Base class
pointer, object slicing, late binding, method overriding with virtual functions, pure virtual
functions, abstract classes.
Operator Overloading: This pointer, applications of this pointer, Operator function, member
and non member operator function, operator overloading, I/O operators. Exception
handling: Try, throw, and catch, exceptions and derived classes, function exception
declaration, unexpected exceptions, exception when handling exceptions, resource
capture and release.
Module III
Dynamic memory management, new and delete operators, object copying, copy
constructor, assignment operator, virtual destructor.
Template: template classes, template functions.
Standard Template Library: Fundamental idea about string, iterators, hashes, iostreams
and other types.
Namespaces: user defined namespaces, namespaces provided by library. Object
Oriented Design, design and programming, role of classes.
,Lecture 04: BENEFITS OF OOP
Lecture 05: Basics of C++
Lecture 06: Tokens
Lecture 07: Basic Data types in C++
Lecture 08: Symbolic Constant
Lecture 09: Operators
Lecture 10: Control Structures
Lecture 11: Functions in C++
Lecture 12: Function Overloading
Lecture 13: Class
Lecture 14: Member Function
Lecture 15: Nesting of Member function
Lecture 16: Array with Class
Lecture 17: Static Data Member
Lecture 18: Friendly functions
Lecture 19: Returning Objects
Lecture 20: Constructors
Lecture 21: Destructors
Lecture 22 & 23: Operator Overloading
Lecture 24: Type Conversion
Lecture 25: Class to Basic type
Lecture 26: Inheritance
Lecture 27: Multilevel Inheritance
Lecture 28: Hierarchical Inheritance
Lecture 29: Virtual Base Class
Lecture 30: Polymorphism
Lecture 31: Virtual functions
Lecture 32: Pure Virtual Functions
Lecture 33: C++ function overriding
Lecture 34: Exception Handling
Lecture 35: Array reference out of bound
Lecture 36: Containership in C++
Lecture 37: Template
Lecture 38: Class Template
Lecture 39: Virtual destructors
Lecture 40: Managing Console I/O
Lecture 41: Namespaces
Lecture 42: New & Delete Operators
Module-1:
LECTURE-1
Introduction:
Programmers write instructions in various programming languages to perform their computation tasks
such as:
(i) Machine level Language
3 P.T.O
, (ii) Assembly level Language
(iii) High level Language
Machine level Language :
Machine code or machine language is a set of instructions executed directly by a computer's central
processing unit (CPU). Each instruction performs a very specific task, such as a load, a jump, or an
ALU operation on a unit of data in a CPU register or memory. Every program directly executed by a
CPU is made up of a series of such instructions.
Assembly level Language :
An assembly language (or assembler language) is a low-level programming language for a computer,
or other programmable device, in which there is a very strong (generally one-to-one) correspondence
between the language and the architecture's machine code instructions. Assembly language is
converted into executable machine code by a utility program referred to as an assembler; the
conversion process is referred to as assembly, or assembling the code.
High level Language :
High-level language is any programming language that enables development of a program in much
simpler programming context and is generally independent of the computer's hardware architecture.
High-level language has a higher level of abstraction from the computer, and focuses more on the
programming logic rather than the underlying hardware components such as memory addressing and
register utilization.
The first high-level programming languages were designed in the 1950s. Now there are dozens of
different languages, including Ada , Algol, BASIC, COBOL, C, C++, JAVA, FORTRAN, LISP,
Pascal, and Prolog. Such languages are considered high-level because they are closer to human
languages and farther from machine languages. In contrast, assembly languages are considered
lowlevel because they are very close to machine languages.
The high-level programming languages are broadly categorized in to two categories:
In the procedure oriented approach, the problem is viewed as sequence of things to be done such as
reading , calculation and printing.
4 P.T.O
The benefits of buying summaries with Stuvia:
Guaranteed quality through customer reviews
Stuvia customers have reviewed more than 700,000 summaries. This how you know that you are buying the best documents.
Quick and easy check-out
You can quickly pay through credit card or Stuvia-credit for the summaries. There is no membership needed.
Focus on what matters
Your fellow students write the study notes themselves, which is why the documents are always reliable and up-to-date. This ensures you quickly get to the core!
Frequently asked questions
What do I get when I buy this document?
You get a PDF, available immediately after your purchase. The purchased document is accessible anytime, anywhere and indefinitely through your profile.
Satisfaction guarantee: how does it work?
Our satisfaction guarantee ensures that you always find a study document that suits you well. You fill out a form, and our customer service team takes care of the rest.
Who am I buying these notes from?
Stuvia is a marketplace, so you are not buying this document from us, but from seller soheb4897. Stuvia facilitates payment to the seller.
Will I be stuck with a subscription?
No, you only buy these notes for $11.49. You're not tied to anything after your purchase.