星星星星辰祈愿 2024-04-01 23:50 采纳率: 0%
浏览 9

c++不调用拷贝构造函数

c++使用方法返回一个对象,拷贝到一个对象中,怎么不调用拷贝构造函数,是不是正常的,

img

img

  • 写回答

4条回答 默认 最新

  • 专家-赤兔[在线] 优质创作者: 编程框架技术领域 2024-04-01 23:50
    关注

    引自免费微信小程序:皆我百晓生

    非常抱歉,您的问题没有明确指出您希望我如何解决。如果您是指C++不调用拷贝构造函数的问题,那我会建议您使用std::unique_ptr来替代拷贝构造函数,因为这个构造函数在每个实例上都进行了手动初始化。您可以在C++代码中这样写:

    #include <iostream>
    #include <memory>
    
    int main()
    {
        std::unique_ptr<int> mnum(new int(100));
        std::cout << *mnum << '\n';
        return 0;
    }
    

    如果您是指返回值类型后置的问题,那么您可以通过创建一个名为MyClass的新类,并在其成员函数中使用std::function来实现。例如,您可以创建一个新的类MyClass,并在这个类中定义一个接受整数作为参数的函数func(int n)。然后,在您的模板类MyClass中声明一个返回类型为std::function类型的成员函数func。您可以在C++代码中这样写:

    template<typename T>
    class MyClass {
    public:
        void func(T n) {
            // 在这里执行需要T操作的任务
        }
    };
    

    以上就是我对您问题的一些建议。如果您还有其他问题,请随时告诉我,我会尽力为您提供帮助。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 4月1日