Fle*_*515 6 c++ arrays parameters struct pointers
有什么区别:
void foo(item* list)
{
cout << list[xxx].string;
}
Run Code Online (Sandbox Code Playgroud)
和
void this(item list[])
{
cout << list[xxx].string;
}
Run Code Online (Sandbox Code Playgroud)
假设项目是:
struct item
{
char* string;
}
Run Code Online (Sandbox Code Playgroud)
指针指向字符数组的第一个
并且list只是一系列项目......
对编译器来说,没有区别.
它虽然看起来不一样.[]建议你想要一个数组传递给函数,而*也可能只是一个简单的指针.
请注意,当作为参数传递时,数组会衰减为指针(如果您还不知道).