bugl
bugl
HomeLearnPatternsPathsSearch
HomeLearnPatternsPathsSearch

Loading lesson path

Learn/C++/C++ Classes
C++•C++ Classes

C++ Classes and Objects

Flash cards

Review the key moves

1/4
Core idea

What is the main idea behind C++ Classes and Objects?

Lesson checks

Practice each idea before moving on

Short Mimo-style checks built from this lesson's code, terms, and sequence.

1Quick choice

Which statement best captures the main point of this lesson?

2Fill blank

Complete the missing token from the example code.

___ MyClass {
3Order

Put the learning moves in the order that makes the concept easiest to apply.

Everything in C++ is associated with classes and objects, along with its attributes and methods.
C++ is an object-oriented programming language.
C++ Classes/Objects

C++ Classes/Objects

C++ is an object-oriented programming language.

Everything in C++ is associated with classes and objects, along with its attributes and methods. For example: in real life, a car is an object . The car has attributes , such as weight and color, and methods , such as drive and brake.

Attributes and methods are basically variables and functions that belongs to the class. These are often referred to as "class members".

A class is a user-defined data type that we can use in our program, and it works as an object constructor, or a "blueprint" for creating objects.

Create a Class

To create a class, use the class keyword:

Example

Create a class called " MyClass ":

class MyClass {
 // The class public: // Access specifier int myNum; // Attribute (int variable) string myString; // Attribute (string variable)
};

Example explained

  • The class keyword is used to create a class called MyClass .
  • The public keyword is an access specifier , which specifies that members (attributes and methods) of the class are accessible from outside the class. You will learn more about access specifiers later.
  • Inside the class, there is an integer variable myNum and a string variable myString . When variables are declared within a class, they are called attributes .
  • At last, end the class definition with a semicolon ; .

Create an Object

In C++, an object is created from a class. We have already created the class named MyClass , so now we can use this to create objects.

To create an object of MyClass , specify the class name, followed by the object name.

To access the class attributes ( myNum and myString ), use the dot syntax ( . ) on the object:

myObj

Multiple Objects

You can create multiple objects of one class:

Example

// Create a Car class with some attributes class Car { public: string brand; string model; int year;
};
int main() {
  // Create an object of Car Car carObj1; carObj1.brand = "BMW"; carObj1.model = "X5"; carObj1.year = 1999; // Create another object of Car Car carObj2; carObj2.brand = "Ford"; carObj2.model = "Mustang"; carObj2.year = 1969; // Print attribute values cout << carObj1.brand << " " << carObj1.model << " " << carObj1.year << "\n"; cout << carObj2.brand << " " << carObj2.model << " " << carObj2.year << "\n";
  return 0;
}

Challenge Task

Create a class called Book with the following attributes:

  • title ( string )
  • author ( string )
  • year ( int )

Then create two objects of the class and print their attribute values.

Matilda, Roald Dahl, 1988
The Giving Tree, Shel Silverstein, 1964

Runnable example

#include <iostream>
#include <string>
using namespace std;
class Book {
  public: string title;
  string author;
  int year;
};
int main() {
  Book book1;
  book1.title = "Matilda";
  book1.author = "Roald Dahl";
  book1.year = 1988;
  Book book2;
  book2.title = "The Giving Tree";
  book2.author = "Shel Silverstein";
  book2.year = 1964;
  cout << book1.title << ", " << book1.author << ", " << book1.year << "\n";
  cout << book2.title << ", " << book2.author << ", " << book2.year;
  return 0;
}

Previous

C++ OOP

Next

C++ Class Methods