7 问答列表

std::optional<std::nullopt_t>将如何操作?

作者:Joshua Green 提问时间:7/15/2023

有点愚蠢的问题,但我很好奇,我还没有找到解释。建造一个合法吗?如果你这样做了,会怎样std::optional<std::nullopt_t> std::optional<std::nullopt_...

赋值运算符是 C++17 下的序列点吗?这种表达的结果会是什么?

作者:Maestro 提问时间:8/1/2022

建议不要在单个表达式中多次修改对象,也不要在同一表达式中修改对象后再使用它。 int i = 0; ++++i; // UB ++i = i++; // OK? 我认为最后一个表达式是 C...

如何将 pimpl 成语与模板化函数一起使用

作者:Tharani B 提问时间:1/24/2023

我有一个具有模板成员函数的类,私有成员需要通过 pimpl idiom 方法放入实现类中。 Foo.hpp的 #include <iostream> class Foo { public: pri...

在 c++ 中,复制初始化使用什么特殊成员函数?

作者:bugcreator 提问时间:1/2/2022

我正在测试 c++ 类初始化。 class Point { private: int x,y; public: Point() = delete; Point(int a):x(a), y(0...

使用非指针数据移动 ctor 和移动赋值运算符

作者:newstudent 提问时间:8/13/2020

我是C++编程的新手,在这里是stackoverflow。我希望你能原谅我在这里的第一个问题,这些问题写得不太好。 我正在 BigData 类中添加移动构造函数和移动赋值运算符。 有人可以告诉我它们...

为什么这种隐式转换会起作用,为什么会起作用

作者:Александр Кушниренко 提问时间:5/13/2019

我不明白为什么 c1 = {1, 2, 3, 4} 和 c2 = {5, 6, 7, 8} 工作正常,没有声明的构造函数,并且编译器生成的编译器不适合。 我试图通过显式转换来理解:(C&) { 1,...

从派生类对基类中的占位缓冲区进行别名化

作者:glades 提问时间:5/11/2022

我想创建一个结构对象数组,每个对象都包含一个包含值的成员。但是,此值的类型可能因对象而异。由于大小不能变化,我决定在基类中放置一个占位缓冲区,我尝试从模板化为类型的派生类中别名。但这行不通: #in...

使用奇怪的重复模板模式 (CRTP) 在抽象基类中实现赋值运算符

作者:niran90 提问时间:10/12/2021

我正在为静态/动态数组编写一个基于 CRTP 的抽象基类。我打算在基类中放置尽可能多的方法,以便在派生类中没有代码重复。我已经让索引运算符工作了,但我正在为赋值 (=) 运算符而苦苦挣扎。 /** ...

基类中模板化构造函数的 clang/gcc 和 MSVC 之间的不同结果

作者:Sedenion 提问时间:2/7/2022

我偶然发现了下面一段代码。该案例在 MSVC 上产生的结果与在 clang 或 gcc 上产生的结果不同。也就是说,clang 13 和 gcc 11.2 调用 的复制构造函数,而 MSVC v19....

编译器错误“未分配的指针未分配”仅在 C++ 中使用自定义对象的 foreach 循环时

作者:BrownBear2018 提问时间:10/13/2021

我有一个作业,我构建了自己的字符串类。我制作了几个 MYString 对象并将它们放在一个向量中。当我通过下标运算符访问向量时,我没有问题。但是当我使用 foreach 循环遍历向量时,我得到一个奇怪...


共1130条 当前第14页