参数传递方式的选择

时间:2020-04-27
本文章向大家介绍参数传递方式的选择,主要包括参数传递方式的选择使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

我们应该将引用类型的参数声明成const的,以表明我们之所以使用引用只是出于效率上的考虑,而并非想让函数修改对象的值。
例如:

    void f(const Large& arg)
    {
        //不允许修改"arg"的值
        //(除非显式使用类型转换)
    }

类似的,指针类型的参数被声明成const意味着该指针所指对象的值不会被函数改变。
例如:

    int strlen(const char*);                     //C风格字符串中的字符数量
    char* strcpy(char* to, const char* from);    //复制一个C风格的字符串
    int strcmp(const char*, const char*);        //比较两个C风格的字符串

程序规模越大,合理使用const参数就显得越重要。

参数的传递方式的选择:
1.对于小对象使用值传递的方式。
2.对于你无须修改的大对象使用const引用传递。
3.如果需要返回计算结果,最好使用return而非通过参数修改对象。
4.使用右值引用实现移动和转发。
5.如果找不到合适的对象,则传递指针。
6.除非万不得已,否则不要使用引用传递。

原文地址:https://www.cnblogs.com/lhb666aboluo/p/12785775.html