gpt4 book ai didi

c++ - 按值或按引用传递 C++ 字符串

转载 作者:IT老高 更新时间:2023-10-28 21:46:14 26 4
gpt4 key购买 nike

我想知道 C++ 字符串是否被认为足够小,以便在按值传递时比通过引用更有效。

最佳答案

没有。通过引用传递它:

void foo(const std::string& pString);

一般来说,如果事物具有非平凡的复制构造函数,则按引用传递,否则按值传递。

字符串通常由一个指向数据的指针和一个长度计数器组成。它可能包含或多或少,因为它是实现定义的,但您的实现不太可能只使用一个指针。

在模板代码中,你也可以使用const T&,因为编译器可以使用函数的定义。这意味着它可以决定是否应该为您提供引用。 (我认为)

关于c++ - 按值或按引用传递 C++ 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1885785/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com