-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathStaticDataMembers
More file actions
45 lines (39 loc) · 1.02 KB
/
Copy pathStaticDataMembers
File metadata and controls
45 lines (39 loc) · 1.02 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include <iostream>
class MyClass
{
public:
// Static data member
static int staticData;
// Constructor
MyClass(int value) : instanceData(value)
{
// Increment static data member
staticData++;
}
// Member function to access instance data
int getInstanceData()
{
return instanceData;
}
// Static member function to access static data
static int getStaticData()
{
return staticData;
}
private:
int instanceData;
};
// Initializing static data member
int MyClass::staticData = 0;
int main()
{
// Creating instances of MyClass
MyClass obj1(10);
MyClass obj2(20);
// Accessing instance data
std::cout << "Instance data of obj1: " << obj1.getInstanceData() << std::endl; // Output: 10
std::cout << "Instance data of obj2: " << obj2.getInstanceData() << std::endl; // Output: 20
// Accessing static data member
std::cout << "Static data: " << MyClass::getStaticData() << std::endl; // Output: 2
return 0;
}