小编Gre*_*jan的帖子

如何选择Hudson和Jenkins?

我花了一个小时左右才弄清楚Hudson最近才开始分支(2011年1月)
我不知道现在每个分支的变化有多快,但更重要的是,每个分支的方向是什么,关键是什么点,以便人们可以选择在哪个之间?

任何人都有产品路线图和功能差异的链接?

continuous-integration hudson jenkins

449
推荐指数
6
解决办法
21万
查看次数

没有<form>,<input>是否良好形成?

<input>没有它是否有效<form>

有一个标记页面中某些字段的过程,只是找到一个页面,其中包含未按预期标记的输入字段.
我花了一段时间,但得出的结果是,获取表单元素然后获取字段的过程是导致这些因素没有形成的原因.

html forms input

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

为什么编译器选择bool over string进行L""的隐式类型转换?

最近引入了方法的重载,应用程序开始失败.最后跟踪它,新的方法被调用,我没想到它.

我们有

setValue( const std::wstring& name, const std::wstring& value );

std::wstring avalue( func() );
setValue( L"string", avalue );
std::wstring bvalue( func2() ? L"true", L"false" );
setValue( L"bool", bvalue );
setValue( L"empty", L"" );
Run Code Online (Sandbox Code Playgroud)

它被更改为当存储bool值时我们使用相同的字符串(字符串的内部数据存储)

setValue( const std::wstring& name, const std::wstring& value );
setValue( const std::wstring& name, const bool& value );

std::wstring avalue( func() );
setValue( L"string", avalue );
setValue( L"bool", func2() );
setValue( L"empty", L"" ); << --- this FAILS!?!
Run Code Online (Sandbox Code Playgroud)

L""的问题在于它是隐式转换,之前它很高兴成为std :: wstring,但它不喜欢是bool.MSVC编译器没有抱怨或提出警告,所以我担心即使我"修复"了setValue(L"空",L""); 成为

setValue( L"empty", std::wstring() );
Run Code Online (Sandbox Code Playgroud)

别人可能会稍后来,只需使用setValue(L"空",L""); 并且必须再次追踪这个问题. …

c++ explicit implicit visual-c++

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

如何使Java.awt.Robot类型为unicode字符?(可能吗?)

我们有一个用户提供的字符串,可能包含unicode字符,我们希望机器人键入该字符串.

如何将字符串转换为机器人将使用的keyCodes?
你是如何做到这一点它也是java版本独立(1.3 - > 1.6)?

我们为"ascii"字符工作的是

//char c = nextChar();
//char c = 'a'; // this works, and so does 'A'
char c = 'á'; // this doesn't, and neither does '?'
Robot robot = new Robot();
KeyStroke key = KeyStroke.getKeyStroke("pressed " + Character.toUpperCase(c) );
if( null != key ) {
  // should only have to worry about case with standard characters
  if (Character.isUpperCase(c))
  {
    robot.keyPress(KeyEvent.VK_SHIFT);
  }

  robot.keyPress(key.getKeyCode());
  robot.keyRelease(key.getKeyCode());

  if (Character.isUpperCase(c))
  {
    robot.keyRelease(KeyEvent.VK_SHIFT);
  }
}
Run Code Online (Sandbox Code Playgroud)

java unicode automation

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

有没有办法在现有的shared_ptr实例上更改删除操作

我有一个功能,我希望在90%的时间内完成清理操作,但在10%中我想要完成其他一些操作.

有没有办法使用一些标准的范围控制,shared_ptr<>以便最初它可以有一个删除操作,然后在函数中可以更改删除操作?

shared_ptr<T> ptr( new T, std::mem_fun_ref(&T::deleteMe) );
ptr.pn.d = std::mem_fun_ref(&T::queueMe);
Run Code Online (Sandbox Code Playgroud)

c++

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

为什么unary_function没有定义operator()?

我只是在为一组基于take和int并返回void的仿函数寻找一个方便的基类.

思考使用std /功能的仿函数基本上将是unary_function<int,void>operator().

为什么virtual result_type operator()(const argument_type& _Left) const = 0;没有在unary_function模板上定义?我猜这是因为constness中可能存在变化......
是否有其他模板我错过了包括operator()

我有一段时间没有这样做,我错过了什么吗?

我怎样才能利用现有的功能

std::ptr_fun< HWND, void >(someFunction);
std::pointer_to_unary_function<HWND, void>(someFunction);
Run Code Online (Sandbox Code Playgroud)

编辑: 也许我应该包括另外一半的用法来完成这个.也许这是一半不适合这个概念的用法.

如何将仿函数传递给方法并使用它?

typedef unary_function<int,void> Functor;

void DoStuff(const Functor& functor) {
  int demo = 1;
  functor(demo);
}
Run Code Online (Sandbox Code Playgroud)

functor作为unary_function没有定义operator(),因此DoStuff不会编译.

c++

6
推荐指数
1
解决办法
1905
查看次数

RealGetWindowClass 和 GetClassName 之间有什么区别?(或者什么是“窗口类型”与“窗口类名”?)

MSDN上的描述有区别,但是,我不明白文本的含义是什么。

GetClassName函数检索指定窗口所属的类的名称。RealGetWindowClass 函数检索指定窗口类型的字符串。

例如使用 windows calc.exe
从 GetClassName 你得到“SciCalc”
从 RealGetWindowClass 你得到“#32770”

我想我真正要问的是什么是“窗口类型”与“窗口类名”?

windows user-interface winapi

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

为什么std :: auto_ptr operator = trash objects?

似乎有std :: auto_ptr和赋值的问题,因此引用的对象似乎由于某种原因而被删除.

std::auto_ptr<AClass> someVar = new AClass();  // should work, but mangles content
std::auto_ptr<AClass> someVar( new AClass() ); // works fine.
std::auto_ptr<AClass> someVar = std::auto_ptr<AClass>(new AClass()); // works fine.

std::auto_ptr<AClass> someVar;
someVar.reset( new AClass() ); // works fine.
Run Code Online (Sandbox Code Playgroud)

我已经跟踪了它,并且(通过观察调试器中的值)出现问题发生在从用于包装rhs指针而创建的临时std :: auto_ptr_byref()的指针传输中.这是输入auto_ptr(auto_ptr_ref <_Ty> _Right)函数时_Right中包含的值是正确的,但是离开时_Myptr中的值是垃圾.

template<class _Ty>
    struct auto_ptr_ref
        {   // proxy reference for auto_ptr copying
    auto_ptr_ref(void *_Right)
        : _Ref(_Right)
        {   // construct from generic pointer to auto_ptr ptr
        }

    void *_Ref; // generic pointer to auto_ptr ptr
    };

template<class _Ty> …
Run Code Online (Sandbox Code Playgroud)

c++ memory std

3
推荐指数
1
解决办法
1792
查看次数

错误CS0133:将函数的结果赋值给C#.net中的const

尝试整理范围并避免可能多次调用RegisterWindowMessage.
目前有一个类使用以下成员一次

[DllImport("user32.dll", SetLastError = true, CharSet = CharSet.Auto)]
static extern int RegisterWindowMessage(string lpString);

private int m_message = RegisterWindowMessage("MY_MSG"); 
Run Code Online (Sandbox Code Playgroud)

由于我们只有一个实例,这似乎没问题,但认为使用它会更整洁.根据我的基本C#理解,这应该调用RegisterWindowMessage并将结果分配给int并且不允许它更改.

private const int message = RegisterWindowMessage("MY_MSG"); 
Run Code Online (Sandbox Code Playgroud)

但试图这样做会导致a

error CS0133: The expression being assigned to 'someclass.messageEvent' must be constant
Run Code Online (Sandbox Code Playgroud)

所以现在我很困惑,这是否意味着函数被分配并且每次调用之前都m_message被调用过,是否还有其他缺失?

c# syntax pinvoke

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