Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

डेटा छिपाने और इनकैप्सुलेशन का उपयोग करके छात्र की जानकारी रखने के लिए C++ प्रोग्राम

मान लीजिए कि हम डेटा छिपाने और इनकैप्सुलेशन के साथ छात्र डेटा प्रकार बनाना चाहते हैं। छात्रों के पास first_name, last_name, आयु और कक्षा के आइटम होने चाहिए, लेकिन इन चरों को सीधे एक्सेस नहीं किया जा सकता है। हमें कुछ फ़ंक्शन जैसे get_firstname() set_firstname(), get_age() set_age() आदि को परिभाषित करना होगा ताकि वेरिएबल मानों को पुनर्प्राप्त और अपडेट किया जा सके, और इस प्रारूप में छात्रों के विवरण प्रदर्शित करने के लिए एक to_string() फ़ंक्शन (आयु, first_name, last_name, class) ) कंसोल से इनपुट के रूप में चार पैरामीटर लें और उन्हें सेटर विधियों का उपयोग करके सेट करें जिन्हें हमने परिभाषित किया है, और प्रत्येक आइटम को गेटटर विधियों का उपयोग करके और अंत में to_string() विधि का उपयोग करके दिखाएं।

तो, अगर इनपुट पसंद है

priyam
kundu
16
10

तो आउटपुट होगा

16
priyam
kundu
10

(16, priyam, kundu, 10)

इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -

  • first_name के साथ एक वर्ग को परिभाषित करें, प्रकार की स्ट्रिंग और आयु का last_name, पूर्णांक प्रकार का cl

  • सभी विशेषताओं के लिए गेट्टर फ़ंक्शन को परिभाषित करें

  • सभी विशेषताओं के लिए सेटर फ़ंक्शन को परिभाषित करें

  • स्ट्रिंग-स्ट्रीम ऑब्जेक्ट का उपयोग करके to_string() फ़ंक्शन को परिभाषित करें और स्वरूपित स्ट्रिंग बनाएं जो आउटपुट प्रारूप से मेल खाता हो

  • मुख्य विधि से निम्न कार्य करें -

  • प्रत्येक पंक्ति को पढ़ें और क्रमशः first_name, last_name, आयु, cl स्टोर करें

  • इन मानों को कक्षा के सदस्यों में सेट करने के लिए कॉल सेटर फ़ंक्शन करता है

  • गेट्टर विधियों का उपयोग करके सभी विशेषताएँ प्रिंट करें;

  • to_string() फ़ंक्शन का उपयोग करके इस प्रारूप (आयु, first_name, last_name, cl) में छात्र जानकारी प्रदर्शित करें।

उदाहरण

आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -

#include <iostream>
#include <sstream>
using namespace std;
class Student{
    private:
    int age, cl;
    string first_name, last_name;
    public:
    int get_age(){return age;}
    int get_class(){return cl;}
    string get_firstname(){return first_name;}
    string get_lastname(){return last_name;}
    void set_age(int a){age = a;}
    void set_class(int c){cl = c;}
    void set_firstname(string fn){first_name = fn;}
    void set_lastname(string ln){last_name = ln;}
    string to_string(){
        stringstream ss;
        ss << "(" << age << ", " << first_name << ", " << last_name << ", " << cl << ")";
       
        return ss.str();
    }
};
int main() {
    Student stud;
    int age, cl;
    string first_name, last_name;
    cin >> first_name >> last_name >> age >> cl;
    stud.set_age(age);
    stud.set_class(cl);
    stud.set_firstname(first_name);
    stud.set_lastname(last_name);
    cout << stud.get_age() << endl;
    cout << stud.get_firstname() << endl;
    cout << stud.get_lastname() << endl;
    cout << stud.get_class() << endl;
    cout << endl << stud.to_string();
}

इनपुट

priyam
kundu
16
10

आउटपुट

16
priyam
kundu
10

(16, priyam, kundu, 10)

  1. C++ प्रोग्राम का उपयोग करके प्रोग्राम कैसे लॉन्च करें?

    यहां हम देखेंगे कि कुछ तृतीय-पक्ष एप्लिकेशन जैसे नोटपैड या सी ++ प्रोग्राम का उपयोग करके कुछ भी कैसे शुरू किया जाए। यह प्रोग्राम बहुत सरल है, हम इस कार्य को करने के लिए कमांड प्रॉम्प्ट कमांड का उपयोग कर सकते हैं। हम सिस्टम () फ़ंक्शन के अंदर एप्लिकेशन का नाम पास करेंगे। यह उसके अनुसार खुल जाएगा। उद

  1. सी ++ प्रोग्राम संरचना का उपयोग करके जानकारी को स्टोर और प्रदर्शित करने के लिए

    एक संरचना विभिन्न डेटा प्रकारों की वस्तुओं का एक संग्रह है। यह विभिन्न डेटा प्रकार के रिकॉर्ड के साथ जटिल डेटा संरचना बनाने में बहुत उपयोगी है। एक संरचना को स्ट्रक्चर कीवर्ड से परिभाषित किया जाता है। संरचना का एक उदाहरण इस प्रकार है - struct employee {    int empID;    char name

  1. सी ++ प्रोग्राम रिकर्सन का उपयोग करके जीसीडी खोजने के लिए

    दो संख्याओं का सबसे बड़ा सामान्य भाजक (GCD) उन दोनों को विभाजित करने वाली सबसे बड़ी संख्या है। उदाहरण के लिए:मान लें कि हमारे पास निम्नलिखित दो संख्याएँ हैं:45 और 27 63 = 7 * 3 * 3 42 = 7 * 3 * 2 So, the GCD of 63 and 42 is 21 रिकर्सन का उपयोग करके दो नंबरों के जीसीडी को खोजने का कार्यक्रम इस प्रक