我希望我理解得正确。在下面的c++函数中,将创建三个std::string实例:
- 一个是在caller()中为s1所创建的,我相信这被称为赋值构造函数
- callee()函数的参数s2通过其复制构造函数创建了第二个实例
- 第三个实例s3通过其复制构造函数创建
void caller(void) {
std::string s1 = "hi";
callee(s1);
}
void callee(std::string s2) {
std::string s3 = s2;
}