问题标签 [deleted-functions]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - std::map:当元素不可默认构造时创建/替换元素
假设您有一个不可默认构造的类。
现在,我们有一些映射 Int --> A, std::map<int, A> mapping
。假设我们要为某个键 0 创建一个新映射,如果该键存在,我们要替换旧值。对默认可构造类执行此操作的方法是:
然而,对于 A 类,这将失败,因为 operator[] 首先构造了 A 的默认实例,然后才会分配 的值A(4)
。通常这样做的一种方法(即对于非默认可构造类)是这样的:
我的问题是:这真的是(C++)预期的方式吗?我觉得这是不对的;作为一名程序员,我不想为这么少的东西编写这么多的代码。但似乎没有简单的出路:我查找了常见的映射方法(插入、emplace、emplace_hint),如果密钥已经存在,它们都什么都不做。
c++ - 如何返回一个类的两个对象相加的结果
在编译时,当它返回添加对象的结果时,它sme error
就像使用删除函数一样。constexpr Player::Player(const Player&)
c++11 - 声明被c++删除的函数的条件
全部,
编译器自己声明删除函数的条件是什么?
考虑以下:
我在分配时遇到编译器错误(MSVC 2019):
这是用 C++11 编译的。
蒂亚!
c++ - C++ 和 ExprTk 解析器“使用已删除函数”错误
我正在尝试在一个类中使用 ExprTk 数学表达式解析器库,该类的对象将存储在对象向量中,该向量是另一个类的成员变量;但是,当我尝试 push_back 向量中的新对象时,我遇到了很多“使用已删除函数”错误。这是给我带来问题的代码的简单版本:
我没有包含头库,因为它有近 40,000 行,但可以在这里找到:http: //www.partow.net/programming/exprtk/。
这是错误消息
我很确定这个问题与 push_back 函数以及对象的复制方式有关;然而,这有点超出我的头脑和 C++ 的知识(这是相当基本的)。
任何帮助,将不胜感激。谢谢!
c++ - 如何修复尝试在 C++ sfml 中引用已删除函数错误
这是 main.cpp
这是class.cpp
错误打印这个
严重性代码 描述 项目文件行抑制状态错误 C2280 'sf::RenderWindow::RenderWindow(const sf::RenderWindow &)': 试图引用已删除的函数 sfml C:\Users\Luka\Desktop\progrraming\sfml\sfml\ sfml.cpp 19
先感谢您
c++ - 定义移动赋值运算符时,如何将包含 unique_ptr 的对象分配给其类型的向量?
下面的独立程序部分导致 Visual Studio 2019 出现此错误:
"function "partition_data::operator=(const partition_data &)" (隐式声明)" 是一个被删除的函数。
基于对此类问题的研究,我定义了一个移动赋值运算符,因为 unique_ptr 但我仍然收到上述错误。在此示例中如何解决此错误?
c++ - 试图引用已删除的函数 shared_ptr
我有以下代码
编译后我收到以下错误
错误 C2280: 'std::shared_ptrjsonrpcpp::Notification std::dynamic_pointer_castjsonrpcpp::Notification,jsonrpcpp::Entity(const std::shared_ptrjsonrpcpp::Entity &) noexcept': 试图引用已删除的函数
至于通知类如下
据我了解,错误是基于这样一个事实,即我的 move/param 构造在我声明它们但仍然收到错误时没有显式实现,知道如何解决它吗?
至于基类如下
任何帮助,将不胜感激
感谢
c++ - 为什么我的编译器不允许将已删除的非抛出虚拟成员函数覆盖为已删除的抛出成员函数?
我读过 C++ 入门第 5 版。一个virtual
不会抛出 ( noexcept
) 的成员函数必须被重写为非抛出函数。例外情况是virtual
成员函数被定义为“已删除”成员。
所以我试过这个:
但是当我编译代码时,我得到了错误:
我搜索了 cppreference 并发现了相同的想法:
如果虚函数是非抛出的,则每个覆盖器的所有声明(包括定义)也必须是非抛出的,除非覆盖器被定义为已删除。这是来自 cppreference 的代码:
当我从 cppreference 编译程序时,我得到与我的示例相同的错误。(除此之外不f()
应该编译)。所以考虑我void f();
在struct D
. 编译器对void h() = delete;
.
那么我的编译器有什么问题?谢谢!
f()
注意:我已经在他们的网站上尝试了 cppreference 中的代码并在 struct 中注释掉D
并且代码也没有编译?!那么这也是他网站上的错误吗?
clang 和 gcc 示例:https ://www.godbolt.org/z/f7hzbG
reactjs - 在反应js中使用reducer的axios删除操作
我正在使用 context api 进行 crud 操作并使用 reducer。我从 api 获取数据并将其存储为初始值。但现在我很困惑如何从我获取的列表中删除用户。我做了一个删除功能,它在手动刷新时工作正常,但不会自动刷新并返回错误。如何制作删除功能。
c++ - 删除函数的使用
你好新手程序员在这里。请帮我。我应该怎么办?