什么是评估数学表达式的最佳算法?我希望能够优化这一点,因为我可能有一个带有各种变量的公式,我可能需要使用不同的变量评估数百次.所以基本上如果我可以最初解析公式以便以某种方式对其进行优化,然后我可以根据需要将变量传递给此优化版本,每次为我生成结果.
我将用Delphi或C#编写这个.我已经通过使用分流码算法编写了类似的东西,但每次我需要计算相同的公式时,我必须经历解析阶段.必须有更好的方法来做到这一点.
我将使用.NET框架和C#编写Windows应用程序.应用程序将需要存储将被查询,连接和处理的关系数据.
以前我使用SQL Server完成了这项工作,但这对我现在正在制作的应用程序来说完全有点过头了.
在我的应用程序中存储关系数据的最简单,最简单的方法是什么?如果我在Mac上,我会使用SQLite.什么是.NET等价物?
如何让OwnerDrawn UserControl尊重用户dpi(96/120/xxx)和/或font-size(正常,大,超大)?
有些人建议在Graphics对象上使用DpiX和DpiY属性,但这似乎对我控制中的任何东西都没有(即它们总是设置为96,无论我选择哪种字体大小或dpi).
StackOverflow上还有另一个类似的问题,它建议使用AutoScale属性,但建议的解决方案也没有做任何事情.
除了依赖WPF之外,在.NET中没有办法做到这一点吗?
我有以下查询:
Select diary_id,
(select count(*)
from `comments` as c
where c.d_id = d.diary_id) as diary_comments
From `diaries` as d
Run Code Online (Sandbox Code Playgroud)
这需要很长时间(在我的情况下接近0.119415).如何让它更快?
我只看到一种方法:对主查询中的每一行的注释编号进行额外查询.但这就像在循环中进行查询一样.就像是:
while ($r = mysql_fetch_array($res))
{
$comments = mysql_query("select count(*) from `comments` where d_id = ".$r['diary_id']);
}
Run Code Online (Sandbox Code Playgroud)
我认为这是一个糟糕的策略.还有其他建议吗?
我正在为我的部落网站制作一个小论坛.我想知道我是否应该将文本文本存储在TEXT或BLOB中?有什么不同?我已经看到phpBB这样做了.
什么是BLOB呢?无法在谷歌上找到很多相关信息.
以下代码帮助我验证具有XSD架构的XML文件.
XmlReaderSettings settings = new XmlReaderSettings();
settings.Schemas.Add(null, xsdFilePath);
settings.ValidationType = ValidationType.Schema;
settings.ValidationEventHandler += new System.Xml.Schema.ValidationEventHandler(settings_ValidationEventHandler);
XmlDocument document = new XmlDocument();
document.Load(xmlFilePath);
XmlReader rdr = XmlReader.Create(new StringReader(document.InnerXml), settings);
while (rdr.Read())
{
}
isValid = true;
Run Code Online (Sandbox Code Playgroud)
ValidationEventHandler还告诉我错误是什么,但没有告诉我他们所在的"哪里"或"在哪一行".有没有办法获得XML无法验证的行号?
我有一个输入XML文件,我需要将1:1复制到输出,除了一个包含需要排序的子项的子元素.
<?xml version="1.0"?>
<top>
<elementA />
<elementB />
<contents>
<contentitem>
<id>3</id>
<moretags1 />
<moretags2 />
</contentitem>
<contentitem>
<id>2</id>
<moretags1 />
<moretags2 />
</contentitem>
<contentitem>
<id>1</id>
<moretags1 />
<moretags2 />
</contentitem>
</contents>
</top>
Run Code Online (Sandbox Code Playgroud)
我想要一个XSL转换,它将"contentitem"元素按顺序排列,按其"id"元素排序.必须逐字复制所有其他标记,包括嵌套标记.我已经尝试过使用xsl:copy,但要么我得到了双重内容,要么结果丢失了.
如果我有:
function init(t,y,u)
{
alert(t + " " + y + " " + u);
}
// String.prototype.add = init(5, 6, 7); // 1)
// window.onload = init(5,6,7); // 2)
Run Code Online (Sandbox Code Playgroud)
在1)init中将执行然后它指针被指定String.prototype.add
但在2)该函数只执行一次...但为什么不是两次也onload引发事件?
谢谢
我对Git比较陌生,但我发现在家工作很容易,我想在我们的项目存储在Svn存储库中的工作中使用它.不幸的是,存储库略微不标准,我无法克隆它们.当然,它们都有trunk,branches /和tags /,但是在命中实际项目目录之前,branch /和tags /都有子目录:
trunk/
branches/maintenance/release1
branches/maintenance/release2
...
branches/development/feature1
branches/development/feature2
...
tags/build/build1
tags/build/build2
...
tags/release/release1
tags/release/release2
Run Code Online (Sandbox Code Playgroud)
克隆后:
$ git svn clone -s --prefix=svn/ https://mydomain.com/svnproject
$ git branch -r
development
development@1340
maintenance
maintenance@1340
tags/build
tags/build@1340
tags/release
tags/release@1340
trunk
trunk@1340
Run Code Online (Sandbox Code Playgroud)
我没有得到任何实际的项目分支或标签.我实际上需要能够在主干,一个维护分支和一个开发分支上工作.我已经尝试过这种方法,除了修改配置的几个黑客,但没有什么对我有用.
有什么方法可以将我的非标准Svn项目的关键组件放到本地git存储库中,以便我可以轻松地在它们之间移动?
非常感谢.
更新:我应该补充一点,我不能批量切换到Git(尚).还有其他团队成员参与和国际存在.转型的后勤工作比我更愿意承担,直到我对Git更加满意; 正如我所提到的,我还是很新的.我几乎没有触及其功能的表面.
我不是那种动态编程语言,但是我写了很多JavaScript代码.我从来没有真正了解这个基于原型的编程,有没有人知道这是如何工作的?
var obj = new Object();
obj.prototype.test = function() { alert('Hello?'); };
var obj2 = new obj();
obj2.test();
Run Code Online (Sandbox Code Playgroud)
我记得很久以前我和人们进行了很多讨论(我不确定我在做什么)但是据我所知,没有一个类的概念.它只是一个对象,这些对象的实例是原始的克隆,对吧?
但是JavaScript中这个".prototype"属性的确切目的是什么?它与实例化对象有什么关系?
var obj = new Object(); // not a functional object
obj.prototype.test = function() { alert('Hello?'); }; // this is wrong!
function MyObject() {} // a first class functional object
MyObject.prototype.test = function() { alert('OK'); } // OK
Run Code Online (Sandbox Code Playgroud)
这些幻灯片也非常有帮助.