簡體   English   中英

從同一類中的另一個成員對象訪問成員對象

[英]Accessing member objects from another member object within the same class

假設我有以下C ++代碼:

class Circuit {
    public:
    Properties circuit_prop;
    Library tech_libray;
    InstanceList instances;
}

PropertiesLibraryInstanceList是我的代碼中定義的類。 例如, InstanceList類具有一個名為build的成員函數。 是否可以在不將其作為build參數傳遞的情況下訪問成員對象circuit_proptech_library 解決這個問題的最佳方法是什么?

不,這是不可能的,因為InstanceList可能也存在於Circuit之外。

如果您有一個需要訪問各種成員的方法,則應進入具有那些成員的類(在您的情況下為Circuit

另外, InstanceList需要知道它所屬的Circuit ,在這種情況下,它可以通過Circuit的公共接口訪問成員。

僅僅因為類是同一類的關聯成員,並不意味着它們可以自由訪問彼此的成員對象。 我想說做circuit_proptech_library成員InstanceList會比讓他們在同一類的所有成員更好。 這樣,您可以讓Circuitset自由get設置,或者通過將Circuit成為InstanceListfriend class來自由訪問它們

circuit_prop或tech_library范圍僅在Circuit類中,最好在Circuit內部創建一個方法,該方法具有單獨類所需的所有公共訪問權限。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM