C#学习教程:不可调用的成员”不能像方法一样使用分享


不可调用的成员”不能像方法一样使用

我正面临着一个问题。 所以我会马上放置代码;

public static List blockedOpcodes = new List(); public static bool isOpcodeAllowed(ushort opcode) { lock (locker) { if (blockedOpcodes.Contains(opcode)) { Log1.LogMsg("Oops! Someone tried to send a blocked packet: 0x{" + opcode + ":X}"); return false; } return true; } } public static void Load() { lock (locker) { StreamReader reader; using (reader = new StreamReader("filter.txt")) { string str = null; while ((str = reader.ReadLine()) != null) { blockedOpcodes.Add(Convert.ToUInt16(str)); } } Log1.LogMsg("Opcode filter loaded!"); using (reader = new StreamReader("specialip.txt")) { string item = null; while ((item = reader.ReadLine()) != null) { specialIPs.Add(item); } } } } 

所以这些都在一个名为“程序”的类中我正在尝试做的是收集数据’操作码’来阻止’blockedOpcodes’

 if (Project_name.Program.blockedOpcodes(current.Opcode)) 

这就是错误出现的地方..

错误:

错误1不可调用的成员’Project_name.Program.blockedOpcodes’不能像方法一样使用。 C: Users skipper Desktop Project_name without src2 – Copy Project_name Clients.cs 584 63 Project_name

任何帮助将不胜感激,谢谢! PS:我是C#的初学者,我7天前开始了…

显然你需要

 if (Project_name.Program.blockedOpcodes[current.Opcode] != 0) 

而不是这个:

 if (Project_name.Program.blockedOpcodes(current.Opcode)) 

因为blockedOpcodes是一个列表而不是一个方法。

编辑:您需要将列表值与0 (或任何您认为是“无效”值)进行比较,因为您在列表中存储了int值。

编辑:要检查给定的OpCode是否在您的列表中,只需调用:

上述就是C#学习教程:不可调用的成员”不能像方法一样使用分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—猴子技术宅(www.ssfiction.com)

 if (blockedOpcodes.Contains(current.Opcode)) { /* ... */ } 

本文来自网络收集,不代表猴子技术宅立场,如涉及侵权请点击右边联系管理员删除。

如若转载,请注明出处:https://www.ssfiction.com/ckf/1269676.html

(0)
上一篇 1天前
下一篇 1天前

精彩推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注