C ++中的uint()函数在哪里

时间:2017-09-26 10:33:53

标签: c++ qt

我正在尝试编译Qt应用程序但是我收到错误:

error: 'uint' was not declared in this scope

调用它的代码:

double Bi = gsl_ran_binomial_pdf(uint(i),t,uint(N-1));

我意识到这是一个愚蠢的问题,但我无法在任何地方找到它(搜索Qt源代码和标准库),并且由于其名称而无法进行谷歌搜索。我怀疑它在Qt框架中有一些辅助函数。

任何人都知道我在哪里可以找到来源?

1 个答案:

答案 0 :(得分:4)

7002 13 3 7003 1 3 7003 13 3 7012 1 3 7012 13 3 6995 1 3 7020 13 3 7031 13 3 7045 1 3 7045 13 3 7046 1 3 7046 13 3 很可能不是函数,而是类型uint的typedef(或别名)。在源代码的某处会有一行像

unsigned int

或(C ++ 11风格)

typedef unsigned int uint;

这告诉编译器当您键入using uint = unsigned int; 时,它应该替换内置类型uint的名称。

现在,当你说unsigned int时,它不是函数调用,而是函数式转换,它将值转换为uint(i)。你可以同样说

unsigned int

获得相同的效果。