首页 文章

初始化值是在编译时还是运行时计算的?

提问于
浏览
5

如果我有一个使用 rand() 函数作为其初始化值的函数,那么当程序编译时,或者函数运行时,是否会找到该值?

说:

int function(int init = rand()){
  return init;
}

如果在编译时找到它,我怎样才能使初始化成为动态的?我想我会使用 NULL 作为初始化值,但我如何区分 NULLinit = 0 之间的区别?

1 回答

  • 6

    该值在运行时计算 .

    你总是可以创建一个小程序,并在练习中检查:

    int main() {
        srand( time(NULL) );
        std::cout << function() << std::endl;
    }
    

相关问题