小编Dan*_*ely的帖子

Solution Explorer vs Solution Navigator vs Class View

自从我开始使用VS 2k3以来,我一直在使用解决方案资源管理器,此时我的偏好与其他任何东西一样多,所以我想知道Visual Studio中其他解决方案可视化选项的哪些功能可能会使它们更有用.

我可以摆弄另外两个,但是这种方法更能识别解决方案资源管理器所具有的功能,而不是发现它们做得更好.

visual-studio-2010

11
推荐指数
1
解决办法
3272
查看次数

如果不存在,File.AppendAllText创建子目录?

如果我有路径C:\Test\Test1\a.txt并且Test1不存在,我怎样才能确保在追加到.txt之前创建它?

c#

11
推荐指数
1
解决办法
3300
查看次数

为什么我不能将List <List <Foo >>传递给IEnumerable <IEnumerable <Foo >>

此代码生成两个编译时错误:

private void DoSomething()
{
    List<List<Foo>> myFoos = GetFoos();

    UseFoos(myFoos);
}

private void UseFoos(IEnumerable<IEnumerable<Foo>>)
{

}
Run Code Online (Sandbox Code Playgroud)

The best overloaded method match for 'NameSpace.Class.UseFoos(System.Collections.Generic.IEnumerable<System.Collections.Generic.IEnumerable<Foo>>)' has some invalid arguments

Argument 1: cannot convert from 'System.Collections.Generic.List<System.Collections.Generic.List<Foo>>' to 'System.Collections.Generic.IEnumerable<System.Collections.Generic.IEnumerable<Foo>>'

施法IEnumberable<List<Foo>>不是问题.铸造List它失败的类型的内部组件有什么不同?

c# generics .net-3.5

11
推荐指数
1
解决办法
1412
查看次数

为什么Java不允许通过实例方法隐藏静态方法?

http://docs.oracle.com/javase/tutorial/java/IandI/override.html所示,Java确实允许

  1. 通过实例方法覆盖实例方法
  2. 通过静态方法隐藏静态方法

我的问题是为什么Java不允许通过实例方法隐藏静态超类方法.这可以这样做:

class Base {
    static void foo () {}
}

class Derived extends Base {
    void foo () {}
    void access () {
        foo ();
        Base.foo ();
    }
}
Run Code Online (Sandbox Code Playgroud)

我没有看到上述方法有任何特殊问题 - 它只是像"允许的"隐藏静态的"混乱/复杂".

java inheritance

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

如何对公共接口背后高度复杂的代码进行单元测试

我想知道如何通过NUnit测试这种功能.

Public void HighlyComplexCalculationOnAListOfHairyObjects()
{
    // calls 19 private methods totalling ~1000 lines code + comments + whitespace
}
Run Code Online (Sandbox Code Playgroud)

从阅读中我可以看出,NUnit的设计目的不是为了测试私有方法,而是出于对单元测试应该是什么的哲学原因; 但是试图创建一组完全执行计算中涉及的所有功能的测试数据几乎是不可能的.同时,计算分解为许多合理离散的小方法.然而,它们并不具有逻辑意义,彼此独立地完成,所以它们都被设置为私有.

c# nunit unit-testing

10
推荐指数
1
解决办法
1541
查看次数

使用min(width,height)/ 2作为半径在WPF中绘制一个圆

如何使用min(width, height)/2半径在WPF(没有代码隐藏)中绘制圆圈?

wpf geometry xaml code-behind

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

成员函数隐藏自由函数

void foo(int)
{
}

class X
{
    void foo()
    {
    }

    void bar()
    {
        foo(42);
        // error: no matching function for call to 'X::foo(int)'
        // note: candidate is:
        // note: void X::foo()
        // note:   candidate expects 0 arguments, 1 provided        
    }
};
Run Code Online (Sandbox Code Playgroud)

为什么C++无法调用自由函数(这是唯一具有正确签名的函数)?

c++ visibility function overload-resolution

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

从3个点计算圆的中心和半径

请问有人能够快速显示代码吗?假设我们得到三个点p1,p2,p3在左 - >右顺序.因此,解决方案还应该检查圆是否有效,即(p1,p2,p3)是逆时针的.

geometry center

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

隐藏重载的虚函数

考虑以下结构层次结构:

struct I1 {
    virtual void doit() = 0;
};

struct I2 {
    virtual void doit(int) = 0;
};

struct I12 : I1, I2 {
    using I1::doit;
    using I2::doit;
};

struct Derived : I12 {
    void doit(int) override {}
};
Run Code Online (Sandbox Code Playgroud)

编译它(使用clangg++使用-Woverloaded-virtual)会给我一个警告:

'Derived::doit' hides overloaded virtual function [-Woverloaded-virtual]
Run Code Online (Sandbox Code Playgroud)

但是,如果我更改I12为以下内容,它会编译得很好clang,同时g++ -Woverloaded-virtual仍会发出警告:

struct I12 : I1, I2 {
    using I1::doit;
    void doit(int) override = 0;
};
Run Code Online (Sandbox Code Playgroud)

using I2::doit和之间的区别在哪里void doit(int) …

c++ virtual overloading member-hiding

10
推荐指数
1
解决办法
3596
查看次数

C#以编程方式取消最小化表单

如何获取当前最小化的表单并将其还原到以前的状态.我找不到任何方法来确定它以前WindowStateNormal或是Maximized; 但我知道信息必须存储在某个地方,因为Windows在任务栏上使用应用程序时没有问题.

c# winforms

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