这是一个最佳实践问题.我正在制作一个阵列
type * x = malloc(size*sizeof(type));
Run Code Online (Sandbox Code Playgroud)
AFAIK sizeof给出size_t的返回值.这是否意味着我应该使用size_t来声明或传递大小?另外,当索引数组时,我还应该使用size_t作为索引变量吗?这些最佳做法是什么?这不是他们在学校教的东西,而现在我正在深入了解我想知道的严肃的c ++.
此外,如果有人参考我可以找到这种东西的最佳实践,它会有帮助吗?程序员预订的礼仪.
编辑:malloc应该是cudaHostAlloc,或cudaMalloc,因为我正在开发一个同时在设备和主机上存储数组的类,并同时更新它们.所以malloc在这里只是我实际要做的事情的持有者.
通常,我使用任何最小化隐式或显式强制转换和警告错误的数量.一般来说,有很好的理由可以按照自己的方式输入内容. size_t
对于数组索引来说是一个很好的选择,因为它是unsigned
你通常不想访问的myarray[-1]
,比方说.
顺便说一句,因为这是C++,你应该养成使用malloc
(free
)的习惯,这是CRT(C运行时库)的一部分.使用new
(delete
),最好使用智能指针,以最大限度地减少手动内存处理.
一旦掌握了基础知识,Scott Meyers的有效C++就是一个很好的实践参考(语言特定).合乎逻辑的下一步是有效STL.
归档时间: |
|
查看次数: |
1716 次 |
最近记录: |