您的位置:首页 > Web前端

By Reference or By Pointer in Method Arguments

2008-11-13 15:47 99 查看
Why Use Reference/Pointer in Method Argument
To allow you to alter a data object in the calling function
To speed up a program by passing a reference instead of an
entire data object
When Should By Reference When Should Be Pointer
No modify the data,

If the data object is small, such as a built-in data type
or a small structure, pass it by value.

If the data object is an array, use a pointer because
that's your only choice. Make the pointer a pointer to const.

If the data object is a good-sized structure, use a
const pointer or a const reference to increase program
efficiency. You save the time and space needed to copy a structure or a class
design. Make the pointer or reference const.

If the data object is a class object, use a const
reference. The semantics of class design often require using a reference,
which is the main reason why C++ added this feature. Thus, the standard way to
pass class object arguments is by reference.

Does modify the data,

If the data object is a built-in data type, use a pointer.

If the data object is an array, use your only choice, a
pointer.

If the data object is a structure, use a reference or a
pointer.

If the data object is a class object, use a reference.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐