cod*_*ver 2 c++ arrays pointers visual-c++
在下面的C++片段中,a = b可能是分配??:
unsigned int * a;
D3DCOLOR b[16];
a=(unsigned int)b;
Run Code Online (Sandbox Code Playgroud)
这个赋值会将b数组的所有元素复制到一个?类型是否合适?
首先,应该是:
a = (unsigned int *)b; // note the *
Run Code Online (Sandbox Code Playgroud)
更重要的是,这只是a 指向内容b,而不是复制它.如果要复制数组,则必须显式执行,例如使用for循环,或者std::copy,如果您不想使用类和东西.
旁注:要复制到a,你需要记忆a!您可以在堆栈上执行此操作:
unsigned int a[16]; // 16 is an example
Run Code Online (Sandbox Code Playgroud)
或动态的(例如new).
| 归档时间: |
|
| 查看次数: |
225 次 |
| 最近记录: |