首页 > 其他分享 >隐式构造函数和explicit

隐式构造函数和explicit

时间:2023-08-22 20:33:41浏览次数:40  
标签:Name Age explicit Entity 隐式 构造函数

  • 当构造函数只有一个构造函数时,可以直接将参数赋值给类对象
class Entity {
public:
	String m_Name;
	int m_Age;
public:
	explicit Entity(const String& name) :m_Name(name) ,m_Age(0){}
	Entity(int age) :m_Name("Unkown"),m_Age(age) {}
};
Entity e1 = 22;
Entity e2 = std::string("wkx");
  • 使用explicit禁用隐式构造函数
class Entity {
public:
	String m_Name;
	int m_Age;
public:
	explicit Entity(const String& name) :m_Name(name) ,m_Age(0){}
	Entity(int age) :m_Name("Unkown"),m_Age(age) {}
};
//隐式构造函数
	Entity e1 = 22;
	//Entity e2 = std::string("wkx");//使用explicit禁用了隐式构造函数

 

标签:Name,Age,explicit,Entity,隐式,构造函数
From: https://www.cnblogs.com/wangkaixin-yy/p/17649625.html

相关文章

  • C++ 隐式转换与explicit关键字
    隐式转换与explicit关键字隐式转换函数构造的隐式转换,直接上代码:#include<bits/stdc++.h>classEntity{private: std::stringm_Name; intm_Age;public: Entity(conststd::string&name) :m_Name(name),m_Age(-1){} Entity(intage) :m_Name("Unknown"),m_A......
  • C++ 构造函数与析构函数
    构造函数和析构函数构造函数构造函数会在实例化对象的时候执行,可以在实例化时传入参数。构造函数没有返回值。不需要声明返回值。构造函数的函数名与类名保持一致。//classname:PlayerPlayer(intxa=0,intya=0){//构造函数,传入初始坐标进行初始化......
  • 1.1 C++ STL 字符串构造函数
    String字符串操作容器是C++标准中实现的重要容器,其主要用于对字符串的高效处理,它和C风格中的string.h并不是同一个库,两个库有极大的差距,C库中的string.h主要面向过程提供一些处理函数,而C++库中的string则是基于类实现的更高效的一种字符串处理方法集,类中提供了非常方便的成......
  • 1.1 C++ STL 字符串构造函数
    String字符串操作容器是C++标准中实现的重要容器,其主要用于对字符串的高效处理,它和C风格中的string.h并不是同一个库,两个库有极大的差距,C库中的string.h主要面向过程提供一些处理函数,而C++库中的string则是基于类实现的更高效的一种字符串处理方法集,类中提供了非常方便的成......
  • webdriver 的三种等待方式(强制等待、隐式等待、显示等待)
    在自动化测试脚本的运行过程中,webdriver操作浏览器的时候,对于元素的定位是有一定的超时时间,大致应该在1-3秒的样子,如果这个时间内仍然定位不到元素,就会抛出异常,中止脚本执行。我们可以通过在脚本中设置等待的方式来避免由于网络延迟或浏览器卡顿导致的偶然失败,常用的等待方式有三......
  • 【C++ Primer读书笔记】7.1.4 构造函数
    构造函数构造函数的任务是初始化类对象的数据成员被调用的时机,无论何时只要类的对象被创建,就会调用构造函数构造函数的特殊性1.构造函数与类名称相同2.构造函数没有返回值3.构造函数不能被声明为const,因为当我们创建一个const对象时,直到构造函数完成初始化过程,对象才......
  • golang 构造函数的应用
    在Go语言中,没有类似于传统面向对象编程语言中的构造函数的概念。然而,你可以使用初始化函数来达到类似的效果。在Go中,结构体(struct)是一种用于封装一组相关字段的数据类型。你可以为结构体定义一个初始化函数,该函数在创建结构体实例时自动调用,用于设置字段的初始值。这个初始化函数......
  • [Unity]为什么不要在Unity中使用构造函数
    MonoBehaviour派生出来的类会作为Unity3D中的Component挂载在GameObject上,而GameObject会在编辑器的多个地方被显示,如场景编辑器内、Prefab选中时等,这些时候都需要调用它们的构造函数来初始化成员变量的默认值,以便在编辑器中显示它们,也就是说,构造函数的调用次数和调用时机是“完全......
  • C++ 构造函数初始化:提高代码可读性和执行效率
    在C++中,构造函数是用来初始化对象数据成员的。一个对象在创建的时候,构造函数会被自动调用,以便为该对象的数据成员赋初值。传统的初始化方式是在构造函数内部对数据成员逐一进行初始化,这种方式虽然可行,但是代码复杂度高且效率低下。本文将介绍如何使用构造函数初始化列表来提高......
  • jQuery隐式迭代
      ......