Tag: 声明

关于声明的螺旋规则 – 什么时候出错?

最近我学习了用于反混淆复杂声明的螺旋规则 , 该规则必须是用一系列typedef写的。 但是,下面的评论警告我: 一个经常被引用的简化,只适用于几个简单的情况。 我没有findvoid (*signal(int, void (*fp)(int)))(int); 一个“简单案例”。 顺便说一句,更令人担忧的是 所以,我的问题是, 在哪种情况下我会正确适用这个规则,哪一个会出错呢?

在类的函数声明之后,“default”是什么意思?

我已经看到在类中的函数声明旁边使用的default 。 它有什么作用? class C { C(const C&) = default; C(C&&) = default; C& operator=(const C&) & = default; C& operator=(C&&) & = default; virtual ~C() { } };

Java数组参数声明语法“…”如何工作?

我一直在写java,今天我遇到了下面的声明: public static void main(String… args) { } 请注意数组声明中的“点圆点”,而不是通常的括号[]。 很明显,它的作品。 事实上,我写了一个小testing,并validation了它的工作原理。 所以,我拉了java语法来看看这个参数声明的语法是什么,但没有find任何东西。 那么对那里的专家来说,这是如何工作的? 它是语法的一部分吗? 另外,虽然我可以像这样声明函数,但是我不能像这样在函数体内声明一个数组。 无论如何,你是否知道有这个logging的地方。 这是好奇心,也许不值得花时间去投资,但是我被困住了。

在sqlite中声明variables并使用它

我想在sqlite中声明一个variables,并在插入操作中使用它 就像在MS SQL中一样 Declare @name as varchar(10) set name = 'name' Select * from table where name = @name 例如,我将需要得到last_insert_row并在插入中使用它 我发现了一些关于绑定的东西,但是我并没有完全理解它

你可以在哪里,不能在C中声明新的variables?

我听到(可能来自一位老师)应该在程序/函数之上声明所有的variables,并且在声明中声明新的variables可能会导致问题。 但是当时我正在读K&R,而且我遇到了这样一句话:“variables的声明(包括初始化)可以在左括号之后,引入任何复合语句,而不仅仅是开始函数的语句”。 他举了一个例子: if (n > 0){ int i; for (i=0;i<n;i++) … } 我对这个概念起了一点作用,即使对于数组也是如此。 例如: int main(){ int x = 0 ; while (x<10){ if (x>5){ int y[x]; y[0] = 10; printf("%d %d\n",y[0],y[4]); } x++; } } 那么到底什么时候我不允许声明variables呢? 例如,如果我的variables声明不正确的后面大括号? 像这样: int main(){ int x = 10; x++; printf("%d\n",x); int z = 6; printf("%d\n",z); } 这可能会造成麻烦取决于程序/机器?

什么是下划线代表在Swift参考?

在苹果的文档的参考部分中有很多这样的事情: func runAction(_ action : SKAction!) Objective-C的“等值”是这样的: – (void)runAction:(SKAction *) action 这让我觉得(在Swift引用中)在下划线之后有一个空格,而“action”用斜体字写的可能很重要。 但我无法弄清楚这是在传达什么。 所以也许问题是…是否有参考文献中使用的约定的参考? – 这里是我引用这个引用下划线使用的页面: https : //developer.apple.com/documentation/spritekit/sknode#//apple_ref/occ/instm/SKNode/runAction 更新 Swift 3对如何使用和命名函数/方法参数名称和参数标签做了一些更改。 这对这个问题及其答案有影响。 @Rickster在解决这个问题的函数中做了一个关于_underscores的不同问题,这个问题做得非常出色: 为什么我需要快速的下划线?

编译器错误时,如果条件和没有大括号声明一个variables

为什么第一个编译好,第二个编译失败呢? if(proceed) {int i;} // This compiles fine. if(proceed) int i;// This gives an error. (Syntax error on token ")", { expected after this token)

为什么#include <stdio.h>不需要使用printf()?

会议logging: >type lookma.c int main() { printf("%s", "no stdio.h"); } >cl lookma.c Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 14.00.50727.762 for 80×86 Copyright (C) Microsoft Corporation. All rights reserved. lookma.c Microsoft (R) Incremental Linker Version 8.00.50727.762 Copyright (C) Microsoft Corporation. All rights reserved. /out:lookma.exe lookma.obj >lookma no stdio.h

在Java中将多个variables初始化为相同的值

我正在寻找一个干净而有效的方法来声明多个相同types和相同值的variables。 现在我有: String one = "", two = "", three = "" etc… 但是我正在寻找像这样的东西: String one,two,three = "" 这是可以做在Java中的东西? 牢记效率。 编辑:有几位成员指出,这不是常态,会混淆大多数人。 谢谢你指出这一点。 我想我会远离这个实现,但我非常感谢下面的答案。

我如何嘲笑在with语句中使用的开放(在Python中使用Mock框架)?

我如何testing下面的代码与模拟 (使用模拟 ,补丁装饰和迈克尔福德的模拟框架提供的哨兵): def testme(filepath): with open(filepath, 'r') as f: return f.read()