icon
+91-8800955639, +91-9871700866, +91-8368840052
IAF iso ec-council certification
icon
+91-8800955639, +91-9871700866, +91-8368840052

Need Help? call us free

IAF
iso
ec-council certification

C++ Programming

C++ Programming

C++ is an object oriented programming language where there is a concept of object and classes. It is a general purpose programming language created by Bjarne Stroustrup as an extension of the C programming language. Basically it is a high-level object oriented programming language.

C++ support four types of memory management: static storage duration objects, thread storage duration objects, automatic storage duration objects and dynamic storage duration objects.

From the above we get to know that c++ programming have objects and classes. So it may come your mind that what are objects and classes in programming. Objects is nothing but it have states and behaviours of the program. For example a bird have states and behaviours which falls under the category of the objects. It states can be colour, name, breed whereas its behaviours are eating, chirping etc. So this is definition of objects.

Class can be defined as a blueprint of the object.

Basically a c++ program is saved in a computer or in a laptop with the help of .cpp extension.

Outline

All the concepts will be explained with hands-on exercise.
This training is for C++ developers. Participants are expected to write code during the session.
Windows or Linux System with appropriate tools installed
Compiler with C++11, C++14 support. CodeBlocks{} with gcc OR MS-Visual Studio.


1. Object Orienting Design Thinking & class construction
Composition, Aggregation
Inheritance, encapsulation,
Polymorphism
Paper Design Exercise – Class representation with OO Design
Online Pre-quiz

2. Review of Basics
Preprocessor & Compilation
Basic Data Types, C++11 auto, decltype, Strongly Typed Enumeration, Loops C++11 Range based
for loop, Array Initialization, Storage duration, Function Overloading, Inline function, Program
Linkages, Declaration & definition

3. C++ class
C++ class, Memory representation, Constructor & Destructor, Overloaded member function,
C++11: delegated constructor, explicitly defaulted constructor, Delegating constructor, Explicitly
deleting overloaded member function, Const Expr

4. C++ Memory Allocation
Deep Copy vs Shallow Copy
Dynamic Memory Allocation - new & delete operator
Reference variables, this keyword, copy constructor, assignment operator,
Static data member & member function

5. C++ Inheritance
memory representation, Polymorphism – virtual functions, Pure virtual function, need for virtual destructor
Virtual Table & Virtual Table Pointer internal compiler representation
Multiple inheritance – diamond inheritance problem and resolution
Compiler handling of virtual tables under multiple inheritance
Namespace, Argument-dependent name lookup
. Friend member, friend class

7. Operator Overloading
operator+, operator<< (ostream)
Operator overloading
operator++ prefix & postfix,
Unary operator
Operator overloading
subscript & exception handling
Overloading function call operator, dereference/indirection operator
Operator new and delete, placement new, behaviour with and without destructor, general guidelines
on operator overloading, assignment operator inheritance, review copy constructor & assignment
operator; Rule of three

8. Advanced C++ concepts and usage
Ptr to member function, const type qualifier, Ptr to constant – constant ptr, Const and Ref data
member initialization, Const member function, mutable keyword, returning const, explicit keyword, RTTI – typeid()

9. Typecasting
const_cast, static_cast, dynamic_cast, reinterpret_cast
Terminologies – upcasting, down-casting, C++11 : preventing inheritance, nullptr, __func__
C++11: Uniform initialization, Alternate function syntax, final preventing overriding, override
keyword

10. C++ Templates
Function templates – how templates work, Overloading function templates, Template Function
specialization, Templates vs Macros,
Template class, default arguments, template specialization – partial and complete
Template Expression – Partial template specialization with expression, multifile project, chances of code bloat

11. C++11: Variadic template function
Template dependent on another template
Dependent name and two-phase lookup, Chances of code bloat with templates

12. C++11: Move Semantics
Rvalue reference, Move Semantics – move constructor & move assignment

13. C++11 Smart Pointer –
unique_ptr, shared_ptr, weak_ptr

14. C++11:
Lambda Functions – Closures, Currying

15. Standard Template Library (STL)
– containers and algorithms – vector, iterators, find, find_if STL: list, deque, priority_queue, stack, map / multimap, bitset, basic_string, tuple, C++11:
Alternate Function Syntax with templates

16. C++11 Multithreading & cache efficiency/ performance -
Writing Efficient Multi-threaded code & related issues

Course Features

  • Duration : 40 Hours
  • Lectures : 20
  • Quiz : 10
  • Students : 15

You may like

C++ Training Institute in Noida


Rating on Best Python Programming Training Institute & Certification in Noida 4.9 out of 5 based on 4000 Students Rating

C++ is known as a general-purpose programming language. it's imperative, object - headed and generic programming options, whereas additionally providing facilities of low-level programming manipulation.

It was designed to bias toward system programming and embedded, resource strained and enormous system, with performance, potency, and adaptability to use designed highlight. C++ has additionally been found helpful in several contexts, key strength software package infrastructure and resources of internet servers, desktop applications.

C++ is employed heavily for developing high-end desktop games, AI programs applications and business merchandise like Firefox, etc. C++ has been the wide used language for the development of applications wherever performance and use of resources, plays an important role. Mastering C++ would lead to a stronghold on OOPS ideas which will make it easier for you to learn various higher languages further.

GICSEH’s C++ course is designed in a way to give the candidates an exposure to the real world. Students directly work on the live projects and this is the reason which makes it the best C++ training institute in Noida.

Real-World Applications of C++ are:

1. Games:
C++ optimizes resource management and facilitates multiplayer with networking. It can also override the complexities of 3D games. The language is extraordinarily quick, permits procedural programming for CPU intensive functions and provides bigger management over hardware, thanks to that it's been widely employed in the development of. for example, the fiction game Doom 3 is cited as AN example of a game that used C++ well and also the Unreal Engine, a set of game development tools, is written in C++.

2. GUI based applications:
Many extremely used applications, like Image Ready, Adobe Premiere, Photoshop, and Illustrator, are written in C++.

3. internet Browsers:
With the introduction of specialised languages like PHP and Java, the adoption of C++ is restricted for scripting and web applications. However, wherever speed and reliableness are needed, C++ remains the most popular. for example, a part of Google’s back-end is coded in C++, and also the rendering engine of some open source projects, like browser Mozilla Firefox and email client Thunderbird, are also scripted in the programming language.

4. Advance Computations and Graphics:
C++ provides the way for building applications requiring real-time physical simulations, superior image processing, and mobile detector applications. Maya 3D software package, used for integrated 3D modelling, visual effects and animation, is coded in C++.

5. information Software:
C++ and C are used for scripting MySQL, one of the most popular database management software. The software package forms the backbone of a range of database-based enterprises, like Google, Wikipedia, Yahoo, and YouTube, etc.

6. operating Systems:
C++ forms AN integral part of several of the prevalent operating systems together with Apple’s OS X and varied versions of Microsoft Windows, and also the erstwhile Symbian mobile OS.

7. Enterprise Software:
C++ finds a purpose in banking and mercantilism enterprise applications, like those deployed by Bloomberg and Reuters. it's additionally employed in the development of advanced software packages, like flight simulators and radar processing.

8. Medical and Engineering Applications:
Many advanced medical pieces of equipment, like MRI machines, use C++ language for scripting their software package. it's additionally a part of engineering applications, like high-end CAD/CAM systems.

9. Compilers:
A host of compilers together with Apple C++, Bloodshed Dev-C++, Clang C++ and MINGW make use of the C++ language.