C++:默认生成的成员函数
当前位置:以往代写 > C/C++ 教程 >C++:默认生成的成员函数
2019-06-13

C++:默认生成的成员函数

C++:默认生成的成员函数

C++默认生成4个成员函数.

默认结构函数(default constructor), 析构函数(destructor), 复制结构函数(copy constructor), 赋值函数(assignment);

个中析构函数, 会自动析构C++的根基范例数据.

"=default"暗示添加默认, 可以用于重载; "=delete"暗示删除, 即不利用默认;

以下代码主要展示, 复制结构函数 和赋值函数的生成环境.

代码:

/* 
 * test.cpp 
 * 
 *  Created on: 2014.04.14 
 *      Author: Spike 
 */
      
/*eclipse cdt, gcc 4.8.1*/
      
#include <iostream>  
#include <string>  
      
using namespace std;  
      
class Foo {  
public:  
    Foo(std::string _name) : m_name(_name) {};  
    void say() { std::cout << m_name << std::endl;}  
    Foo(const Foo&) = default; //delete暗示删除, default暗示利用默认  
    Foo& operator=(const Foo&) = default;  
    ~Foo() = default;  
private:  
    std::string m_name;  
};  
      
int main() {  
    Foo F1("Wang");  
    Foo F2(F1);  
    Foo F3 = F2;  
    F2.say();  
    F3.say();  
    return 0;  
}

输出:

Wang  
Wang

作者:csdn博客 Spike_King

    关键字:

在线提交作业