为什么静态类类型函数返回零?

时间:2016-08-03 23:29:04

标签: c++ function

我正在阅读斯坦福大学教授Nick Parlante的C ++ Essential讲义。以下是一个代码示例:

/* If C++ kept class name information around at run-time,
    this would be easier. */
    static Account *RandomAccount(void) {
    switch (RandomNum(3)) {
    case 0: return(new Gambler); break;
    case 1: return(new NickleNDime); break;
    case 2: return(new MonthlyFee); break;
    }
    return(0);
    }

static int RandomNum(int num) {
return(rand() % num);
}

我的问题是,为什么当类型为Account时此函数返回零?这在这里是否意味着错误?

1 个答案:

答案 0 :(得分:3)

该函数返回Account*,而不是Account。那个0是一个空指针常量。