首页 > 编程语言 >C++中的 =default

C++中的 =default

时间:2024-04-08 16:36:03浏览次数:23  
标签:use cout default C++ defined user 构造函数

参考:链接

每当我们声明一个有参构造函数时,编译器就不会创建默认构造函数。如下代码就会发生错误:

// use of defaulted functions
#include <iostream>
using namespace std;

class A {
public:
    // A user-defined
    A(int x){
        cout << "This is a parameterized constructor";
    }

    // Using the default specifier to instruct
    // the compiler to create the default implementation of the constructor.
    // A() = default;
};

int main(){
    A a;          //call A()
    A x(1);       //call A(int x)
    cout<<endl;
    return 0;
} 

在这种情况下,我们可以使用default说明符来创建默认说明符。以下代码演示了如何创建:

// use of defaulted functions
#include <iostream>
using namespace std;

class A {
public:
    // A user-defined
    A(int x){
        cout << "This is a parameterized constructor";
    }

    // Using the default specifier to instruct
    // the compiler to create the default implementation of the constructor.
    A() = default;
};

int main(){
    A a;          //call A()
    A x(1);       //call A(int x)
    cout<<endl;
    return 0;
} 

标签:use,cout,default,C++,defined,user,构造函数
From: https://www.cnblogs.com/codingbigdog/p/18121613

相关文章

  • 突破编程_C++_网络编程(Windows 套接字(常用数据结构))
    1WSADATAWSADATA结构体包含了关于Winsock实现的一些详细信息,定义如下:structWSAData{WORDwVersion;//Winsock版本号WORDwHighVersion;//Winsock动态库支持的最高版本号charszDescription[WSADESCRIPTION_LEN+1];//Winsock描......
  • 突破编程_C++_网络编程(Windows 套接字(API 接口(1)))
    1初始化与清理1.1WSAStartupWSAStartup函数用于初始化Winsock库,并指定应用程序所需的Winsock版本。它允许应用程序与WinsockDLL(动态链接库)建立联系,并准备Winsock环境以供后续使用。(1)函数原型如下:intWSAStartup(WORDwVersionRequested,LPWSADATAlpWSAData......
  • 【每周例题】蓝桥杯 C++ 对称排序
    对称排序题目对称排序 题目分析1.因为数字是对称交换,所以我们只需要判断前n/2项需不需要交换就好了2.这里我采用了升序排序,你们也可以尝试降序排序3.我们只需要排序好后再遍历一下整个数组,找出不符合排序的就输出NO就好了代码#include<iostream>#include<bits/stdc+......
  • 计算机毕业设计项目:springboot 智能答疑系统 96852(开题答辩+程序定制+全套文案 )上万套
    毕业论文(设计) 题   目springboot智能答疑系统学   院       XXXXX     专业班级   XXXXX学生姓名       XXXX    指导教师            XXXX          撰写日期:202 年 月 日目 录摘要......
  • 计算机毕业设计项目:新生儿疫苗接种管理系统 87023(开题答辩+程序定制+全套文案 )上万套
    PHP新生儿疫苗接种管理系统系   院XXXX学科门类XXX专   业 XXX班级XXX学   号XXX姓   名XXX指导教师XXX教师职称XXX摘 要新生儿计划免疫是根据危害儿童健康的一些传染病,利用安全有效的疫苗,按照规定的免疫程序进行预防接种,......
  • Property [renew] not found. Using default value [false]
    接口请求时,报错Property[renew]notfound. Usingdefaultvalue[false]返回:Therewasanunexpectederror(type=NotFound,status=404).有两种可能:1、添加扫描路径使用basePackages:@ComponentScan(basePackages={"com.person","com.controller"})2、添加依赖......
  • c++类与对象<三>初始化列表,静态成员,友元,匿名对象
    目录前言一:再次认识构造函数之成员初始化列表初始化成员变量1.类对象整体的定义与对象中每个成员变量的定义2.初始化列表3.explicit 关键字二:static成员 1.概念2.经典实例:实现一个类,计算程序中创建出了多少个类对象3.特点总结 三:匿名对象 1.匿名对象就像结构体......
  • c++primer 9.52答案
    萌新业余时间学c++中,学过一点c之前,下面一个自己写的9.52答案,尽量用到了前面学到的知识,与大加分享交流一下,希望能互相讨论学习。/*******************************************************************************************@FilePath:MyDate.h*@Author:YMM*@Date......
  • C++之静态变量和全局变量的区别
    全局变量和静态变量的存储方式是一样的,只是作用域不同。静态局部变量具有局部作用域只对定义自己的函数可见,只被初始化一次,自从初始化一次之后直到程序运行期间一直都在。静态全局变量具有全局作用域作用于定义它的程序文件但是不能作用于项目里的其它文件,这一点和全局变......
  • C++学习笔记九--模版
    目录前言1.函数模版1.函数模版的概念和定义2.函数模版的实例化2.类模版1.类模版的概念和定义2.类模版的实例化3.示例代码前言        这篇文章介绍下C++中的模版,包括函数模版和类模版。1.函数模版    在编程的过程中,编写函数都会考虑将其写......