第3周課後實踐·程式閱讀(4)-利用引用訪問私有資料成員
/*
* Copyright (c) 2015, 煙臺大學計算機學院
* All rights reserved.
* 檔名稱:test.cpp
* 作 者:劉暢
* 完成日期:2015年 3 月 20 日
* 版 本 號:v1.0
*
* 問題描述:按照封裝與資訊隱藏的原則,除非特別需要,類中的資料成員需要設定為私有。由此帶來的問題是,在類外如何訪問這些私有成員?
下面4段程式概括了常用的方法。請仔細閱讀下面的程式,在閱讀過程中,畫出物件、變數在記憶體中的表示圖,寫出這些程式的執行結果(包括變數
的變化過程及程式的最終輸出),達到徹底理解這些機制的目標。
* 輸入描述: NULL;
* 程式輸出: NULL。
程式碼如下:
#include <iostream>
using namespace std;
class Test
{
private:
int x,y;
public:
void setX(int a)
{
x=a;
}
void setY(int b)
{
y=b;
}
void getXY(int &px,int &py)
{
px=x;
py=y;
}
};
int main()
{
Test p1,p2;
p1.setX(3);
p1.setY(5);
int a,b;
p1.getXY(a,b);
cout<<a<<'\t'<<b<<endl;
return 0;
}
執行結果:
示意圖:
相關文章
- 第3周課後實踐·閱讀程式(2)-利用指標訪問私有資料成員指標
- 第3周課後實踐·閱讀程式(3)-利用函式訪問私有資料成員函式
- 第2周專案-課後實踐·閱讀程式(1)
- 第2周專案-課後實踐·閱讀程式(2)
- 第4周課後實踐·閱讀程式-建構函式和解構函式(4)函式
- 第4周課後實踐·閱讀程式-建構函式和解構函式(2)函式
- 第4周課後實踐·閱讀程式-建構函式和解構函式(3)函式
- 第4周課後實踐·閱讀程式-建構函式與解構函式(1)函式
- 《GitHub 入門與實踐》閱讀筆記(第4章)Github筆記
- C++ 突破私有成員訪問限制C++
- 第3周專案5-陣列作資料成員(4)陣列
- 使用屬性而不是可訪問的資料成員
- 薦讀|屬性與可直接訪問的資料成員之間應該如何選
- C/C++—— 除了用類成員函式訪問類私有成員變數外,還可以通過類物件地址來直接訪問和修改類的私有成員變數C++函式變數物件
- 第13周-閱讀專案3-對文字檔案的訪問
- ThinkPHP原始碼閱讀1——-訪問流程PHP原始碼
- 第 36 期 k8s context 實踐原始碼閱讀K8SContext原始碼
- 如何在資料訪問層中引用資料庫連線池?資料庫
- C#與資料庫訪問技術總結(十二)資料閱讀器(DataReader)2C#資料庫
- 閱讀程式回答問題
- 《JVM第4課》程式計數器JVM
- 個人閱讀 程式碼大全的閱讀與提問
- 【OpenAI】私有框架程式碼生成實踐OpenAI框架
- 第4課 SVN
- C#與資料庫訪問技術總結(十一)之資料閱讀器(DataReader)1C#資料庫
- Flex 3處理資料 訪問 XML 資料4FlexXML
- 既然Java反射可以訪問和修改私有成員變數,那封裝成private還有意義麼?Java反射變數封裝
- Web最佳實踐閱讀總結(1)Web
- Web最佳實踐閱讀總結(2)Web
- 主題閱讀-專案實踐感悟
- c# 基類派生類成員方法訪問C#
- 谷歌利用資料解決女性員工流失問題谷歌
- 第3周專案5-陣列作資料成員(1)陣列
- 第3周專案5-陣列作資料成員(2)陣列
- 第3周專案5-陣列作資料成員(3)陣列
- 第3周專案5-陣列作資料成員(5)陣列
- 資料治理之後設資料管理實踐
- 利用Eclipse CDT 閱讀C/C++程式碼EclipseC++