正在正确生成人们推荐用于测试xml的单元测试策略.
我目前的测试看起来很原始,有点像:
[Test]
public void pseudo_test()
{
XmlDocument myDOC = new XmlDocument();
mydoc = _task.MyMethodToMakeXMLDoc();
Assert.AreEqual(myDoc.OuterXML(),"big string of XML")
}
Run Code Online (Sandbox Code Playgroud) 在您看来,从函数返回新分配的内存流或将其传递给函数是否更好?例如,
void Foo(MemoryStream m)
{
m.Write(somebuffer, 0, somebuffer.Length);
}
Run Code Online (Sandbox Code Playgroud)
要么
void MemoryStream Foo()
{
MemoryStream retval = new MemoryStream();
retval.Write(somebuffer, 0, somebuffer.Length);
return retval;
}
Run Code Online (Sandbox Code Playgroud) 目标语言是C/C++,程序只能在Linux上运行,但平台无关的解决方案显然是首选.我可以使用Xorg,XVideo和OpenGL.
在配备英特尔显卡的英特尔酷睿2双核处理器上,我能在1024x768上获得多少FPS?(只有绘图计数,考虑在RAM中准备好阵列;不需要精确预测)
我一直在评估各种智能指针实现(哇,有很多),在我看来,大多数可以分为两大类:
1)此类别对引用的对象使用继承,以便它们具有引用计数,并且通常实现up()和down()(或它们的等价物).IE,要使用智能指针,您指向的对象必须从ref实现提供的某些类继承.
2)此类别使用辅助对象来保存引用计数.例如,不是将智能指针指向对象,而是实际指向此元数据对象...谁具有引用计数以及up()和down()实现(并且通常为指针提供一种机制)获取指向的实际对象,以便智能指针可以正确实现operator - >()).
现在,1有一个缺点,它强制你想引用的所有对象计数从一个共同的祖先继承,这意味着你不能使用它来引用你无法控制源代码的计数对象至.
2有一个问题,因为计数存储在另一个对象中,如果你有一个指向现有引用计数对象的指针被转换为引用的情况,你可能有一个错误(IE,因为计数不在实际的对象,新的引用没有办法得到计数...引用ref复制构造或赋值是好的,因为它们可以共享count对象,但如果你必须从指针转换,你'完全被冲洗了)...
现在,正如我所理解的那样,boost :: shared_pointer使用了机制2,或类似的东西......那就是说,我不能完全决定哪个更糟糕!我只使用机制1,在生产代码中......有没有人有这两种风格的经验?或许还有另一种方式比这两种方式更好?
有没有人有任何教学关系数据库和SQL的好方案?我可以找到的所有示例都是微不足道的或具有不可能的域约束(如全名是唯一的).
我特别想找到一些标准化的好例子:不能立即适合3NF和BCNF的表格.目前我正在为每个级别使用不同的问题.
当然,我也喜欢设计糟糕的数据库的好例子,但是在掌握了基础知识之前,它会有点分散注意力.
谢谢,一些很好的例子.我已经将学生/班级标记为答案,因为我认为这是迄今为止最好的,但如果有人想要贡献更多,请做.
我有一个批处理脚本执行任务并将输出发送到文本文件.有没有办法在控制台窗口上显示输出?
例如:
c:\Windows>dir > windows-dir.txt
Run Code Online (Sandbox Code Playgroud)
有没有办法dir
在控制台窗口中显示输出并将其放入文本文件?
必须有一个简单的方法来做到这一点.我使用依赖于SWC库的ant构建一个Flex应用程序,除了无论是否需要重建库之外,它都能正常工作.如果库(*.as,*.mxml)的任何源文件比SWC更新,我如何告诉ant只运行任务?
我看过<dependset>但它似乎只是删除文件,而不是确定是否应该运行任务.<depend>似乎期望源文件和目标文件之间存在一对一的关系,而不是一对多的关系 - 我有很多输入文件和一个输出文件,但没有中间对象文件.
非常感谢,Alex
我需要一个计时器来执行分辨率相对较低的回调.在Linux中实现这样的C++计时器类的最佳方法是什么?我可以使用任何库吗?
什么是从PHP文件中删除注释的最佳方法?
我想做类似strip-whitespace()的东西 - 但它也不应该删除换行符.
例如:
我要这个:
<?PHP
// something
if ($whatsit) {
do_something(); # we do something here
echo '<html>Some embedded HTML</html>';
}
/* another long
comment
*/
some_more_code();
?>
Run Code Online (Sandbox Code Playgroud)
成为:
<?PHP
if ($whatsit) {
do_something();
echo '<html>Some embedded HTML</html>';
}
some_more_code();
?>
Run Code Online (Sandbox Code Playgroud)
(虽然如果删除注释的空行仍然存在,那就不行了).
这可能是不可能的,因为需要保留嵌入式HTML - 这就是在谷歌上出现的东西绊倒了.