问题列表 - 第1737页

.net反射和"params"关键字

在.net中,有没有办法使用反射来确定方法上的参数是否用"params"关键字标记?

.net c# reflection

10
推荐指数
2
解决办法
2776
查看次数

什么是最好的开源SNMP监控工具?

我目前正在开发必须为SNMP版本1和2以及将来可能发布v3的SNMP陷阱的软件.我已下载了几个,发现它们太复杂或太简单.我想要的只是查看陷阱并分析其中的数据结构,以及导入我的自定义MIB的能力.到目前为止,我发现的最好的是ireasonings MIB Browser,但对于任何不错的选择都会很棒.

snmp

20
推荐指数
2
解决办法
5万
查看次数

如何在Eclipse中设置linux C++项目?

我在Linux环境中有一个现有的C++项目,并希望将它导入Eclipse IDE.

不确定我是否应该启动一个新的Eclipse C++项目,或者是否有某种方法来导入源文件?

c++ eclipse linux

5
推荐指数
1
解决办法
1万
查看次数

什么是设计的术语ala"object.method1().method2().method3()"?

这个设计的术语是什么?

object.method1().method2().method3()
Run Code Online (Sandbox Code Playgroud)

..当所有方法都返回*这个?

我不久前找到了这个术语,但同时失去了它.我不知道如何在谷歌搜索这个:)如果有人能想到一个更好的标题的问题,随时改变它.

谢谢

更新-Gishu:阅读之后,我觉得你的问题是误导的wrt代码片段..(随意回滚)

方法链接

object.method1().method2().method3()
Run Code Online (Sandbox Code Playgroud)

流畅的界面

private void makeFluent(Customer customer) {
        customer.newOrder()
                .with(6, "TAL")
                .with(5, "HPK").skippable()
                .with(3, "LGV")
                .priorityRush();
    }
Run Code Online (Sandbox Code Playgroud)

c++

6
推荐指数
3
解决办法
519
查看次数

有没有办法将3D模型导入Android?

是否可以创建一个简单的3D模型(例如在3DS MAX中),然后将其导入Android?

3d android opengl-es

53
推荐指数
4
解决办法
6万
查看次数

寻求关于构造代码的说明以减少圈复杂度

最近,我们公司已开始每周测量代码中的功能的圈复杂度(CC),并报告哪些功能已经改善或恶化.所以我们开始更多地关注功能的CC.

我已经读过CC可以非正式地计算为1 +函数中的决策点数(例如if语句,for循环,select等),或者通过函数的路径数...

我知道减少CC的最简单方法是重复使用Extract Method重构...

有些事情我不确定,例如以下代码片段的CC是什么?

1)

for (int i = 0; i < 3; i++)
    Console.WriteLine("Hello");
Run Code Online (Sandbox Code Playgroud)

Console.WriteLine("Hello");
Console.WriteLine("Hello");
Console.WriteLine("Hello");
Run Code Online (Sandbox Code Playgroud)

它们都做同样的事情,但是由于for语句,第一个版本是否有更高的CC?

2)

if (condition1)
    if (condition2)
        if (condition 3)
            Console.WriteLine("wibble");
Run Code Online (Sandbox Code Playgroud)

if (condition1 && condition2 && condition3)
    Console.WriteLine("wibble");
Run Code Online (Sandbox Code Playgroud)

假设语言进行了短路评估,例如C#,那么这两个代码片段具有相同的效果......但是第一个片段的CC是否更高,因为它有3个决策点/ if语句?

3)

if (condition1)
{
    Console.WriteLine("one");

    if (condition2)
        Console.WriteLine("one and two");
}
Run Code Online (Sandbox Code Playgroud)

if (condition3)
    Console.WriteLine("fizz");

if (condition4)
    Console.WriteLine("buzz");
Run Code Online (Sandbox Code Playgroud)

这两个代码片段做了不同的事情,但它们是否有相同的CC?或者第一个片段中的嵌套if语句是否具有更高的CC?即嵌套if语句在精神上更难理解,但是在CC中反映出来了吗?

language-agnostic metrics cyclomatic-complexity

20
推荐指数
3
解决办法
3757
查看次数

在C++中返回对象

从类中返回对象时,何时是释放内存的正确时间?

例,

class AnimalLister 
{
  public:
  Animal* getNewAnimal() 
  {
    Animal* animal1 = new Animal();
    return animal1;
  }
}
Run Code Online (Sandbox Code Playgroud)

如果我创建一个Animal Lister的实例并从中获取Animal引用,那么我应该在哪里删除它?

int main() {
  AnimalLister al;
  Animal *a1, *a2;
  a1 = al.getNewAnimal();
  a2 = al.getNewAnimal();
}
Run Code Online (Sandbox Code Playgroud)

这里的问题是AnimalLister没有办法跟踪动物创建的列表,所以我如何更改这些代码的逻辑以便有办法删除创建的对象.

c++ memory-management factory

34
推荐指数
5
解决办法
2万
查看次数

是否有可能在Java中实现派生类中的接口?

让我们有以下类层次结构:

public class ParentClass implements SomeInterface {
}

public class ChildClass extends ParentClass {
}
Run Code Online (Sandbox Code Playgroud)

然后让我们有这两个实例:

ParentClass parent;
ChildClass child;
Run Code Online (Sandbox Code Playgroud)

然后我们有以下TRUE语句

(parent instanceof SomeInterface) == true
(child instanceof SomeInterface) == true
Run Code Online (Sandbox Code Playgroud)

是否有可能在ChildClass中实现SomeInterface,所以当我们检查instanceof运算符时它返回false?

如果不可能,是否有解决方法?

java oop

2
推荐指数
2
解决办法
1051
查看次数

设置DataRow中项目的值不起作用

我试图将DataTable中的所有DateTime值转换为字符串.这是我使用的方法:

private static void ConvertDateTimesToStrings(DataTable dataTable)
{
    if (dataTable == null)
    {
        return;
    }

    for (int rowIndex = 0; rowIndex < dataTable.Rows.Count; rowIndex++ )
    {
        for (int i = 0; i < dataTable.Columns.Count; i++)
        {
            DateTime dateTime;
            try
            {
                dateTime = (DateTime)dataTable.Rows[rowIndex][i];
            }
            catch (InvalidCastException)
            {
                continue;
            }
            dataTable.Rows[rowIndex][i] = dateTime.ToString("dd.MM.yyyy hh:mm:ss");
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

这条线路工作后:

dataTable.Rows[rowIndex][i] = dateTime.ToString("dd.MM.yyyy hh:mm:ss");
Run Code Online (Sandbox Code Playgroud)

我检查dataTable.Rows [rowIndex] [i]的值,看它仍然是DateTime,而不是字符串.为什么会发生这种情况,我该如何解决?

编辑:我正在尝试这样做,因为我正在与api战斗,不幸的是我没有选择使用哪个组件.

c# datarow

4
推荐指数
2
解决办法
2万
查看次数

如果出现故障,如何自动重新建立双工通道?

我正在使用WCF在.Net 3.5中开发客户端/服务器应用程序.基本上,长时间运行的客户端服务(在多台计算机上)通过netTcpBinding建立到服务器的双工连接.然后,服务器使用客户端的回调契约来执行某些按需操作,客户端以异步方式响应(我认为这是相当标准的东西).我将DuplexClientBase类子类化以处理大部分通信.

不幸的是,当两端出现问题时(例如网络故障,意外异常等),通道出现故障/中止,所有后续操作都会失败.我通过创建一个RecoveringClientBase类来解决非双工通道中的这种限制,该类在客户端出现故障并重试操作时自动获取.

所以我的问题是,有没有一种既定的方法来确定双工通道何时出现故障?我应该在服务器或客户端上检查这个位置?如果做不到这一点,我有什么选择来确保连接重新建立?

更新:我正在寻找一些特定于双工通道的建议,其中服务器可能会尝试使用出现故障的回调通道.因此,当频道发生某些事情时,我需要立即重新连接/重新订阅的内容.目前,我正在收听频道的Closing事件,如果状态不是已关闭,则重新创建它.它有点工作,但它感觉hacky ......

.net wcf fault-tolerance duplex

13
推荐指数
1
解决办法
5395
查看次数