• Main Menu
  • C

    • Type Conversion – Class to Class

      Type Conversion – Class to Class

      Now that we have understood how to convert basic data types to class types and vice-versa, it is time to learn how to convert objects of one class type to another class type. The conversion between objects of different classes can be done using either a one-argument constructor or a conversion function. The choice depends

    • Trees

      Trees

      Arrays, linked lists, stacks and queues are used to represent linear and tabular data. These structures are not suitable for representing hierarchical data. In hierarchical data we have ancestors, descendants superiors, subordinates, etc Family Structure Business Corporate Structure Federal Government Structure Introduction to Trees Fundamental data storage structures used in programming Combine advantages of ordered

    • Deleting an Element from a Linear Linked List

      Deleting an Element from a Linear Linked List

      To delete an element from the list, first the pointers are set properly and then the memory occupied by the node to be deleted is deallocated (freed). This tutorial covers the deletion of a node from the following three positions: At the beginning of the list At the end of the list After a given

    • Type Conversion – Class to Basic Type

      Type Conversion – Class to Basic Type

      The constructor handles the task of converting basic types to class types very well. But you cannot use constructors for converting class types to basic data types. Instead, you can define an overloaded casting operator that can be used to convert a class data type into a basic data type. The general form of an

    • Constructors that Allocate Memory Dynamically

      Constructors that Allocate Memory Dynamically

      Constructors can be used to initialize member objects as well as allocate memory. This can allow an object to use only that amount of memory that is required immediately. This memory allocation at run-time is also known as dynamic memory allocation. The new operator is used for this purpose. Sample Program The program below shows

    • Deleting an Element from a Heap

      Deleting an Element from a Heap

      Deleting an Element from the Heap Deletion always occurs at the root of the heap. If we delete the root element it creates a hole or vacant space at the root position. Because the heap must be complete, we fill the hole with the last element of the heap. Although the heap becomes complete, i.e.

    • Overloading Binary Operators

      Overloading Binary Operators

      Binary operators can be overloaded in a similar manner as unary operators. We should note the following features of an operator function for a binary operator: It receives only one class type argument explicitly, in case of a member function. For a friend function, two class types are received as arguments. It returns a class

    • Postfix

      Postfix

      The sum of X and Y is written as X+Y where + is the operator while X and Y are the operands. We have always learnt to write the sum of two numbers as X + Y; this notation is know as infix. Here, we’ll be talking about the postfix notation of representing arithmetic operations.

    • Inserting in a Doubly Linked List

      Inserting in a Doubly Linked List

      Inserting an Element To insert an element in the list, the first task is to allocate memory for a new node, assign the element to be inserted to the info field of the node, and then the new node is placed at the appropriate position by adjusting appropriate pointers. Insertion in the list can take

    • Exception Handling

      Exception Handling

      There are two kinds of exceptions, namely, synchronous exceptions and asynchronous exceptions. Errors such as “out-of-range index” and “over-flow” belong to the synchronous type exceptions. The errors that are caused by events beyond the control of the program (such as keyboard interrupts) are called asynchronous exceptions. The proposed exception handling mechanism in C++ is designed

    c
    173 queries in 0.389 seconds.