<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # C++ 類和對象 > 原文: [https://www.programiz.com/cpp-programming/object-class](https://www.programiz.com/cpp-programming/object-class) #### 在本文中,您將學習在 C++ 編程中使用對象和類。 C++ 是一種多范式編程語言。 意思是說,它支持不同的編程風格。 解決編程問題的一種流行方法是創建對象,即所謂的面向對象編程風格。 C++ 支持面向對象(OO)的編程風格,該風格允許您通過創建對象將復雜的問題分成較小的集合。 對象只是數據的集合和作用于這些數據的函數。 * * * ## C++ 類 在 C++ 中創建對象之前,需要定義一個類。 類是對象的藍圖。 我們可以將類視為房子的草圖(原型)。 它包含有關地板,門,窗戶等的所有詳細信息。基于這些描述,我們建造了房屋。 房子是對象。 由于可以用相同的描述制作許多房屋,因此我們可以根據一個類創建許多對象。 * * * ### 如何在 C++ 中定義一個類? 使用關鍵字`class`在 C++ 中定義一個類,后跟類名。 類的主體在大括號內定義,并在末尾以分號結束。 ```cpp class className { // some data // some functions }; ``` * * * ### 示例:C++ 中的類 ```cpp class Test { private: int data1; float data2; public: void function1() { data1 = 2; } float function2() { data2 = 3.5; return data2; } }; ``` 在這里,我們定義了一個名為`Test`的類。 此類具有兩個數據成員:`data1`和`data2`和兩個成員函數:`function1()`和`function2()`。 * * * ### 關鍵字:`private`和`public` 在上面的示例中,您可能已經注意到兩個關鍵字:`private`和`public`。 `private`關鍵字使數據和函數變為私有。 只能從同一類內部訪問私有數據和函數。 `public`關鍵字將數據和函數公開。 公共數據和函數可以在類之外訪問。 在此,`data1`和`data2`是私有成員,其中`function1()`和`function2()`是公共成員。 如果嘗試從類外部訪問私有數據,則編譯器將引發錯誤。 OOP 中的此功能稱為數據隱藏。 * * * ## C++ 對象 定義類時,僅定義對象的規范; 沒有分配內存或存儲空間。 要使用該類中定義的數據和訪問函數,您需要創建對象。 * * * ### 在 C++ 中定義對象的語法 ```cpp className objectVariableName; ``` 您可以如下創建`Test`類的對象(在上面的示例中定義): ```cpp class Test { private: int data1; float data2; public: void function1() { data1 = 2; } float function2() { data2 = 3.5; return data2; } }; int main() { Test o1, o2; } ``` 在此,創建了`test`類的兩個對象`o1`和`o2`。 在上述`test`中,`data1`和`data2`是數據成員,并且`function1()`和`function2()`是成員函數。 * * * ### 如何在 C++ 中訪問數據成員和成員函數? 您可以使用來訪問數據成員和成員函數。 (點)運算符。 例如, ```cpp o2.function1(); ``` 這將在`Test`類中為對象`o2`調用`function1()`函數。 同樣,可以通過以下方式訪問數據成員: ```cpp o1.data2 = 5.5; ``` 重要的是要注意,只能從類內部訪問私有成員。 因此,您可以在以上示例中的任何函數或類中使用`o2.function1();`。 但是,代碼`o1.data2 = 5.5;`應該始終位于類`Test`中。 * * * ### 示例:C++ 編程中的對象和類 ```cpp // Program to illustrate the working of objects and class in C++ Programming #include <iostream> using namespace std; class Test { private: int data1; float data2; public: void insertIntegerData(int d) { data1 = d; cout << "Number: " << data1; } float insertFloatData() { cout << "\nEnter data: "; cin >> data2; return data2; } }; int main() { Test o1, o2; float secondDataOfObject2; o1.insertIntegerData(12); secondDataOfObject2 = o2.insertFloatData(); cout << "You entered " << secondDataOfObject2; return 0; } ``` **輸出** ```cpp Number: 12 Enter data: 23.3 You entered 23.3 ``` 在此程序中,在`test`類下定義了兩個數據成員`data1`和`data2`以及兩個成員函數`insertIntegerData()`和`insertFloatData()`。 聲明了同一類的兩個對象`o1`和`o2`。 使用以下命令為`o1`對象調用`insertIntegerData()`函數: ```cpp o1.insertIntegerData(12); ``` 這會將對象`o1`的`data1`值設置為 12。 然后,調用對象`o2`的`insertFloatData()`函數,并將該函數的返回值存儲在變量`secondDataOfObject2`中: ```cpp secondDataOfObject2 = o2.insertFloatData(); ``` 在該程序中,未使用`o1`的`data2`和`o2`的`data1`。 您還應該檢查以下主題,以了解有關對象和類的更多信息: * [C++ 構造器](/cpp-programming/constructors "C++ constructors") * [如何從函數傳遞和返回對象?](/cpp-programming/pass-return-object-function)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看