这个功能应该如何实现

这个功能应该怎么实现?
有一个整形变量g_value,有一个函数ValueChanged,
现在要求当g_value的值被改变的时候,函数ValueChanged将自动被调用。
请问大家,这个功能可以实现吗?

------解决方案--------------------
弄一个副本记录g_value的值可以么?然后在改变g_value的地方加入判断条件
C/C++ code
int f_value = g_value;
...
g_value = ...
if(g_value != f_value)
{
    ValueChanged();
    f_value = g_value;
}

------解决方案--------------------
Delphi和C#中的属性可以实现这种功能,C/C++中不支持。
------解决方案--------------------
可以用CPU的数据改变断点
------解决方案--------------------
貌似听说过 观察者模式。。。lz试试,仅供参考
------解决方案--------------------
使用硬件断点是可以的。也可以使用VirtualAlloc,设置那个地址的保护属性为PAGE_READONLY,然后捕捉写异常,在异常处理中修改属性,再写,调用ValueChanged,改回只读属性。这样做的问题在于保护属性是针对页面的,至少4KB大小吧。

------解决方案--------------------
设置一个全局变量,开个线程一直判断是否改变

首先不知道lz是想通过什么方式去改变这个值呢