我想在C++中获得整数数组的大小.如果方法接受int*我如何获得该值的大小?
int myMethod(int* values)
{
values.size();
}
Run Code Online (Sandbox Code Playgroud)
这给出了编译错误
您可以获得指向整数的指针的大小sizeof(int*).
但是,给定一个指针值,没有可移植的方式(在C或C++中)来获取指向的内存区域的动态-runtime-大小(在堆中或其他地方).
一般建议是尽可能避免使用原始指针:使用智能指针(来自<memory>标头)和标准C++容器(例如std::vector来自<vector>)
所以如果你声明std::vector<int> values;你可以得到矢量大小values.size();
| 归档时间: |
|
| 查看次数: |
97 次 |
| 最近记录: |