我在找一个术语来描述那些
纯净的
也不一定
可重入的
void CounterExample(int value)
{
static int STORE[5];
static int STORE_COUNT=0;
STORE[STORE_COUNT++] = value;
}
而这个会:
void Example(int value)
{
static int STORE[5];
static int STORE_COUNT=0;
STORE_COUNT = 0;
STORE[STORE_COUNT++] = value;
}
我特别考虑硬件初始化功能。通常他们会以某种方式设置GPIO,经历通电顺序,然后以某种方式配置硬件。如果以后我需要重新初始化硬件,我可以再次调用这个函数。但是,如果函数还通过附加到已配置结构的数组来设置一些软件结构,那么如果不先撤消函数最初所做的操作,我就不能再次调用此函数。
例如,一个comms驱动程序初始化函数可能会打开comms驱动程序的电源,发送一些config命令,然后调用另一个名为
AddCommsCallback()
它为通信设备接收到的数据注册一个默认回调。如果我曾经想重置comms驱动程序,我不能简单地再次调用这个函数,因为默认回调将附加到现有的过时回调。
是否有与这两类功能相关的特定术语(除了通用的优点术语!)?