对于想了解有没有一种方法可以强制Checkstyle忽略源代码中的特定警告?的读者,本文将是一篇不可错过的文章,并且为您提供关于delphi–有没有一种方法可以将匿名方法强制转换为指针?、java–如
对于想了解有没有一种方法可以强制Checkstyle忽略源代码中的特定警告?的读者,本文将是一篇不可错过的文章,并且为您提供关于delphi – 有没有一种方法可以将匿名方法强制转换为指针?、java – 如何根据特定模式忽略方法上的checkstyle、java – 有没有办法强制Checkstyle忽略源代码中的特定警告?、java-有没有一种方法可以强制应用程序在使用“主页”按钮后始终从Activity1开始?的有价值信息。
本文目录一览:- 有没有一种方法可以强制Checkstyle忽略源代码中的特定警告?
- delphi – 有没有一种方法可以将匿名方法强制转换为指针?
- java – 如何根据特定模式忽略方法上的checkstyle
- java – 有没有办法强制Checkstyle忽略源代码中的特定警告?
- java-有没有一种方法可以强制应用程序在使用“主页”按钮后始终从Activity1开始?
有没有一种方法可以强制Checkstyle忽略源代码中的特定警告?
PMD可以忽略//NOPMD
Java源文件中带有注释的特定警告。
Checkstyle有类似的选择吗?
答案1
小编典典是的,请查看SuppressionCommentFilter和SuppressWithNearbyCommentFilter选项。
delphi – 有没有一种方法可以将匿名方法强制转换为指针?
function ExternalIntegrand(data: Pointer; x: Double): Double; cdecl; begin Result := GetAnonMethod(data)(x); end; .... var Integrand: TFunc<Double,Double>; Integral: Double; .... Integral := CalcIntegral(ExternalIntegrand,CastToPointer(Integrand),xlow,xhigh);
这里CalcIntegral是调用ExternalIntegrand的外部函数.这反过来采用传递的无类型指针,检索匿名方法,并让它来完成这项工作.
问题是我无法干净地编写CastToPointer.如果我做:
Pointer(Integrand)
编译器对象:
[dcc32 Error]: E2035 Not enough actual parameters
很明显,编译器正在尝试调用匿名方法.
我能够做到这一点:
function CastToPointer(const F: TFunc<Double,Double>): Pointer; inline; begin Move(F,Result,SizeOf(Result)); end;
或这个:
function CastToPointer(const F: TFunc<Double,Double>): Pointer; inline; var P: Pointer absolute F; begin Result := P; end;
但是,当我将动态数组转换为指向数组的指针时,我无法使用简单的转换,这似乎有点令人讨厌.
我意识到我可以传递持有匿名方法的变量的地址.像这样:
function ExternalIntegrand(data: Pointer; x: Double): Double; cdecl; var F: ^TFunc<Double,Double>; begin F := data; Result := F^(x); end; .... Integral := CalcIntegral(ExternalIntegrand,@Integrand,xhigh);
但是,引入另一个间接层似乎有点奇怪.
有没有人知道将匿名方法变量直接转换为指针的方法?我确实意识到这样的欺骗行为是值得怀疑的,但至少出于好奇,我想知道是否可以做到.
解决方法
Integral := CalcIntegral(ExternalIntegrand,Pointer((@Integrand)^),xhigh);
这是一种额外的间接水平,但不是:)
我通过与您的CastToPointer进行比较测试,它的工作原理如下:
program Project8; {$APPTYPE CONSOLE} {$R *.res} {$T+} uses System.SysUtils; function CastToPointer(const F: TFunc<Double,SizeOf(Result)); end; var Integrand: TFunc<Double,Double>; Mypointer1: Pointer; Mypointer2: Pointer; begin Integrand := function(x : double) : double begin result := 2 * x; end; Mypointer1 := Pointer((@Integrand)^); Mypointer2 := CastToPointer(Integrand); Assert(Mypointer1 = Mypointer2,'Pointers don''t match!'); end.
java – 如何根据特定模式忽略方法上的checkstyle
其他checkstyle规则如LineLength拥有该属性
< property name =“ignorePattern”value =“”/>
但这似乎不适用于MethodLengthrule(见http://checkstyle.sourceforge.net/apidocs/com/puppycrawl/tools/checkstyle/checks/sizes/MethodLengthCheck.html).
解决方法
java – 有没有办法强制Checkstyle忽略源代码中的特定警告?
PMD有一种方法来忽略Java源文件中的nopMDcomment的特定警告.
Checkstyle有类似的选择吗?
解决方法
java-有没有一种方法可以强制应用程序在使用“主页”按钮后始终从Activity1开始?
这个应用程式有多个活动:例如:Activity1->活动2->活动3.如果在Activity2中使用“主页”按钮后打开了该应用程序,则该应用程序将返回到Activity2,但是所需的功能是使该应用程序始终从启动器以Activity1开始.在使用“主页”按钮后,将finish()添加到Activity2的onStop()确实会使应用程序从Activity1开始,但是随后,Activity3会使应用程序在完成时恢复为Activity1,而不是Activity2,这也是不希望的.有没有一种方法可以在使用“主页”按钮后强制应用程序始终从Activity1开始?
public class Activity1 extends Activity {
...
public void onCreate(Bundle savedInstanceState) {
...
button1.setonClickListener(new OnClickListener() {
public void onClick(View arg0) {
startActivity(Activity2);
...
public class Activity2 extends Activity {
...
private boolean applyMenuChoice(MenuItem item) {
switch (item.getItemId()) {
case R.id.menuItem1:
startActivity(Activity3);
...
您可能要查看android开发指南中的activity element功能.
关于有没有一种方法可以强制Checkstyle忽略源代码中的特定警告?的介绍现已完结,谢谢您的耐心阅读,如果想了解更多关于delphi – 有没有一种方法可以将匿名方法强制转换为指针?、java – 如何根据特定模式忽略方法上的checkstyle、java – 有没有办法强制Checkstyle忽略源代码中的特定警告?、java-有没有一种方法可以强制应用程序在使用“主页”按钮后始终从Activity1开始?的相关知识,请在本站寻找。
本文标签: