最近看老师的程序
PointList 就是一个点列表结构体
struct Point
{
float x, y;
};
struct PointList
{
int size;
int cur;
struct Point points[10];
};
为什么有时候在函数中使用 PointList L 做参数,有时候使用 PointList &L,两者有什么区别呢?
最近看老师的程序
PointList 就是一个点列表结构体
struct Point
{
float x, y;
};
struct PointList
{
int size;
int cur;
struct Point points[10];
};
为什么有时候在函数中使用 PointList L 做参数,有时候使用 PointList &L,两者有什么区别呢?
简而言之,PointList L
传值,PointList &L
传址。
对于非基元类型,请一律使用PointList &L
作为形参,如果不想改动实参,请用const PointList &L
。
3 回答2k 阅读✓ 已解决
2 回答3.9k 阅读✓ 已解决
2 回答3.2k 阅读✓ 已解决
1 回答3.2k 阅读✓ 已解决
1 回答2.7k 阅读✓ 已解决
3 回答3.4k 阅读
1 回答1.6k 阅读✓ 已解决
这不是C是C++吧,
PointList &L
,我习惯写成PointList& L
,这是申明一个引用类型。函数参数如果不是引用类型会拷贝一个副本,如果是引用类型会传递原来的结构值。