C#检测何时在Stack结构上调用Pop

C# Detect when Pop is called on Stack structure

我正在寻找一种方法来检查何时在我的 Stack 结构上调用 Pop() 函数 我目前正在使用扩展 setter 的 属性 但是.Pop() 似乎没有触发 setter 并且我几乎无法确定集合何时实际更改,除非我正在更改引用本身。关于这一个的任何提示?同样,我只关心 Pop() 函数,我真的不想知道什么时候调用 Push 或任何其他可以修改集合的东西。

您必须创建自己的集合(很可能只是包装一个 Stack 引用),以便您可以创建一个事件并在给定操作(在本例中,任何集合更改为它的声音)被执行。除了偶数逻辑之外,您只需为 Stack 的每个 public 成员创建一个成员,然后让它简单地将调用转发到私有 Stack 实例。