在我继承的一些代码中,我经常看到size_t
与std
命名空间限定符一起使用。例如:
std::size_t n = sizeof( long );
当然,它能够编译和运行。但我认为这是一种不好的做法(可能是从C语言中继承下来的?)。
在C++中,size_t
已经内置并且位于全局命名空间中,这是真的吗?在C++中使用size_t
是否需要包含头文件?
换句话说,以下代码(不包含任何头文件)是否能够在所有C++编译器上预期地进行编译?
size_t foo()
{
return sizeof( long );
}