当没有返回值时,用作方法/函数的返回类型的语法占位符的不完整类型。
JavaScript 的 void 运算符的实际用例是什么?
为什么有人会写: 功能 () { 如果(错误){ 返回 void console.log(错误) } } 代替: 功能 () { 如果(错误){ 控制台.log(错误) 返回 } } 有一个...
如何打印shared_ptr?我必须通过“void print”打印 sp1 和 sp2,但我不知道该怎么做。这是代码 结构媒体资产 { 虚拟〜MediaAsset()=默认; // 妈...
大家好。 我有一个错误:预期参数声明符。 我该如何解决这个问题? 我是编程新手。 提前致谢。 #包括 无效总和(int n1,int n2) { 整数
有人可以向我解释一下为什么调用这个函数后a会变成2而不是3或4吗?
#包括 使用命名空间 std; 无效 f(int &x, int &y) { x = 1; x = x + y; } int main() { 整数a = 3; f(a, a); 计算< #include <iostream> using namespace std; void f(int &x, int &y) { x = 1; x = x + y; } int main() { int a = 3; f(a, a); cout<<a; return 0; } 我在某处发现了这个函数,问题是当 a 为 3 时,调用 f(a, a) 后 a 的值是多少。我认为它应该在 3 到 4 之间,但它以某种方式给出了 2,我不知道不明白。有人可以解释为什么会发生这种情况,以及这些功能如何开始工作吗?好像很令人困惑,因为看起来 a 在函数后面既是 3 又是 4。 您可以使用对同一对象的多个引用来更改它。例如 int a; int &x = a; int &y = a; x = 1; x = x + y; 因为引用 x 和 y 都指向同一个变量 a then 在此语句之后 x = 1; a 等于 1。在下一个语句中 x = x + y; 其实你有 x = a + a; 结果 a 将等于 2。
std::is_void 的描述指出: 提供等于 true 的成员常量值,如果 T 的类型为 void、const void、volatile void,或 const 挥发性无效。 那会是什么
有谁知道如何修复“[错误]预期的主表达式在'.'之前”令牌”问题?
这是我编写的代码。 #包括 #包括 使用命名空间 std; 结构帐户 { 字符串用户名; 字符串密码; }; 结构时间表{ 查尔普拉...
我必须在c中实现动态数组。这是它的结构: typedef void (*PrintArrayElement)(const void* element); 类型定义结构{ size_t 尺寸; size_t 容量; 无效**数组;
在 cppreference.com 上,他们将类型分类为: 空洞类型 基本类型 枚举类型 派生类型 我找不到他们将虚空列为基本类型的原因。这意味着...
什么是 void 函数,如何在我的代码中使用它们? [已关闭]
这段代码既可以用于倒计时,也可以用于以一定间隔进行向上计数,但我应该在其中包含 2 个 void 函数,我该怎么办?他们已经在那里了吗? #包括 使用名称...
我不太知道 void 函数是什么,但显然我应该在这段代码中包含其中的 2 个
这段代码既可以用于倒计时,也可以用于以一定间隔进行向上计数,但我应该在其中包含 2 个 void 函数,我该怎么办?他们已经在那里了吗? `#include 使用名称...
如果没有可用的串行数据,如何退出Arduino中的无效循环?
我正在构建一个互联网控制的机器人,它使用 2 部 Android 手机进行控制。 第一个手机通过 USB 连接到 Arduino Uno 并用作 3G 扩展板 第二部电话用于接...
好的,所以我引用的代码如下。它不是整个代码,而是相关部分 空白 array_sort(void *A, int arr_size, int 比较(void *, void*)) { 无效*最大值= A; 我...
我正在尝试制作一个程序,使用一个结构来存储作者的标题和一本书的页数。然后我希望它找到哪一本的页数最少,然后使用 void 函数来
int fn(); 无效任何() { (无效) fn(); } 是否有任何理由将未使用的返回值强制转换为 void,或者我认为这完全是浪费时间?
我知道在现代 C 中,当我们声明一个没有参数的函数时,我们必须指定 void 关键字,例如: int fx(void); 然而,我对函数定义有一些疑问。对于
我发现以下代码被 Visual C++ 2008 和 GCC 4.3 编译器接受: 无效 foo() { } 空栏() { 返回 foo(); } 我对它的编译感到有点惊讶。这是一种语言吗
我看到签名中带有 void return 的函数/方法在函数末尾有 return 语句。这是什么原因?这是否适用于其他语言? 对于我来说...
在返回 void 的函数中,为什么要返回 void 表达式而不是省略 return 语句?
考虑以下代码片段: 无效 Foo() { // ... } 无效酒吧() { 返回 Foo(); } 与更常见的方法相比,在 C++ 中使用上述内容的合理理由是什么: 无效 Foo() { ...
我不明白为什么这段代码编译没有错误: #包括 模板 结构测试 { 静态 constexpr T f() {return T();} }; int main() { 测试 我不明白为什么这段代码编译没有错误: #include <iostream> template <class T> struct Test { static constexpr T f() {return T();} }; int main() { Test<void> test; test.f(); // Why not an error? return 0; } 按照标准可以吗,还是编译器可以容忍? 根据C++11标准草案,这看起来是有效的,如果我们看一下第5.2.3节显式类型转换(函数符号)段落2说(强调我的): 表达式 T(),其中 T 是简单类型说明符或 非数组完整对象类型的类型名说明符 或 (可能是 cv 限定的)void 类型,创建 指定类型,其值是通过值初始化产生的 (8.5) T 类型的对象; void() 没有进行初始化 案例。[...] 措辞也非常相似 C++11 之前。 这在 constexpr 中没问题,尽管第 7.1.5 段落 3 说: constexpr函数的定义应满足以下条件 限制条件: 并包括此项目符号: 其返回类型应为文字类型; and void 不是 C++11 中的 literal,根据第 3.9 段落 10,但是,如果我们然后查看第 6 段落,它给出了适合这种情况的例外,它说: 如果 constexpr 函数的实例化模板特化 类模板的模板或成员函数将无法满足 constexpr 函数或 constexpr 构造函数的要求, 该专门化不是 constexpr 函数或 constexpr 构造函数。 [ 注意:如果该函数是成员函数,它将 仍然是 const ,如下所述。 —尾注] 如果没有专业化 模板将生成 constexpr 函数或 constexpr 构造函数,程序格式错误;无需诊断。 正如 Casey 在 C++14 草案标准中指出的那样,void是一个文字,这是第 3.9 类型段落10说: 如果满足以下条件,则类型是文字类型: 并包括: ——无效;或 有关完整信息,请参阅@Shafik Yaghmour 的答案。 以下段落禁止非模板这样做(7.1.5(3)): constexpr函数的定义应满足以下约束: [...] 其返回类型应为文字类型或对文字类型的引用 详细来说,3.9(10)中将文字类型定义为标量类型或数组或结构中文字类型对象的组合。根据 3.9(9),void 不是标量类型。 您的函数返回 void() 的值,您本身并不是从 void 函数返回。您正在返回一个 NULL 值。你正在做的事情相当于这样: void f() { return void(); } 这会返回一个空值,唯一的空值。您不能从 void 函数返回任何其他内容,因为它将是不同的类型。
我听到一个谣言,void 的意思是 null|undefined。毕竟,这段代码是合法的: var x: void = 未定义,y: void = null; 但我遇到的问题违背了这种理解。 编辑:问题