簡體   English   中英

重載數組下標運算符

[英]Overload array subscript operator

除了在類中,還有什么方法可以在C ++中重載數組下標運算符? 我想在讀取/寫入數組時調用用戶定義的函數。

例如:

int* array = new int[10];
array[0] = 5;

用array [0]編寫時,我想調用自己的函數。 我知道可以通過重載operator [](例如,SafeArray類)在類內部完成此操作。

謝謝。

您想要的是包裝器類,例如:

template<typename T>
struct SubscriptWrapper {
    SubscriptWrapper(T* array) : array_(array) {};
    T& operator[](size_t index) { 
        // your magic goes in here
    };
    T* array_;
}

暫無
暫無

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

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