explicit-constructor

explicit-constructor

文章 0 浏览 6

如果复制列表初始化允许显式构造函数,可能会出现什么问题?

在 C++ 标准 §13.3.1.7 [over.match.list] 中,有以下规定: 在复制列表初始化中,如果选择显式构造函数,则初始化格式错误。 这就是为什么我们不能这…

讽刺将军 2025-01-02 14:22:05 3 0

显式移动构造函数?

建议对所有大多数可以使用一个参数调用的构造函数使用explicit关键字,复制构造函数除外。 对于复制构造函数,它有一个用途(禁止通过函数调用、返回…

痴情 2024-11-25 08:18:24 8 0

标记所有 C++ 有什么缺点吗?构造函数显式?

有几次,在重构代码时,我忘记在向以前的无参数构造函数添加参数或从以前的多参数构造函数中删除参数时添加 explicit 关键字。为了防止这种情况发生,…

空城之時有危險 2024-11-01 17:51:40 10 0

C++ 中放置 new VS 显式构造函数调用

最近我遇到了这两种在内存中特定位置创建对象的方法: 1. void* mem = malloc(sizeof(T)); T* obj = new(mem) T(); 2. T* obj = (T*)malloc(sizeof(T)…

初见 2024-10-21 16:54:32 14 0

c++继承问题

我对此有一个问题: class A { int a; int* pa; public: A(int i):a(i) , pa(new int(a)) { cout<<"A ctor"<

单调的奢华 2024-10-16 06:37:46 16 0

c++复制初始化&直接初始化,奇怪的情况

在继续阅读本文之前,请阅读 是在 C++ 中,复制初始化和直接初始化之间有区别吗? 首先,请确保您理解它在说什么。 我先在这里总结一下规则(阅读标准…

不奢求什么 2024-10-14 07:04:19 13 0

为什么默认构造函数和具有 2 个或更多(非默认)参数的构造函数允许显式调用?

我知道带有一个(非默认)参数的构造函数就像隐式转换器,它从该参数类型转换为类类型。但是,explicit 可用于限定任何构造函数、不带参数的构造函数…

凶凌 2024-10-08 01:15:53 20 0

显式指定方法/构造函数是否意味着不能隐式调用它?

显式指定方法/构造函数是否意味着不能隐式调用它?我的意思是,如果构造函数被指定为显式,那么它不能被某些运算符(如=)或其他方法(如转换器构造函…

-小熊_ 2024-10-07 15:11:01 14 0

有没有明确的副本

我正在寻找这样的语法: class Hugo { Hugo(); explicit Hugo( const Hugo& hugo ); Hugo GetRandomHugo() { Hugo hugo; hugo.value = rand(); // thi…

挽清梦 2024-10-04 04:30:01 12 0

C++ -- 为什么我们应该在这个构造函数中使用显式?

请参阅维基百科:策略模式(C++) class Context { private: StrategyInterface * strategy_; public: explicit Context(StrategyInterface *strategy…

注定孤独终老 2024-09-30 17:22:41 14 0

C 中显式赋值和隐式赋值有什么区别?

int value = 5; // this type of assignment is called an explicit assignment int value(5); // this type of assignment is called an implicit as…

溺孤伤于心 2024-09-05 23:08:36 10 0

“明确”的目的是什么?对于默认构造函数?

我最近注意到 C++0x 中的一个类需要显式默认构造函数。但是,我无法想出可以隐式调用默认构造函数的方案。这似乎是一个毫无意义的说明符。我想也许它…

情仇皆在手 2024-09-01 13:30:53 17 0

具有默认值的单参数构造函数是否可以进行隐式类型转换

我了解使用显式关键字来避免单参数构造函数或具有多个参数(其中只有第一个参数没有默认值)的构造函数可能发生的隐式类型转换。 但是,我想知道,在…

好菇凉咱不稀罕他 2024-08-31 14:13:35 15 0

C++已弃用从字符串常量到“char*”的转换

我有一个带有私有 char str[256]; 的类 ,并且我有一个显式构造函数: explicit myClass(char *func) { strcpy(str,func); } 我将其称为: myClass ob…

为你拒绝所有暧昧 2024-08-07 00:42:52 17 0

如果我使用显式构造函数,是否需要将关键字放在 .h 和 .cpp 文件中?

其实我的问题都在标题里。 无论如何: 我有一个类,我使用显式构造函数: .h class MyClass { public: explicit MyClass(const string& s): query(s) …

任性一次 2024-07-08 18:07:23 18 0
更多

推荐作者

十二

文章 0 评论 0

飞烟轻若梦

文章 0 评论 0

OPleyuhuo

文章 0 评论 0

wxb0109

文章 0 评论 0

旧城空念

文章 0 评论 0

-小熊_

文章 0 评论 0

更多

友情链接

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文