现在,Visual Studio对C#的重构支持非常好(虽然不如我已经看到的一些Java IDE好一半),但我真的缺少C++支持.
我见过Refactor!我现在正在尝试,但也许你们其中一个人知道一个更好的工具或插件?
这是问题所在:
在C#中,我从传统的ACCESS数据库中获取信息.在将内容交给我之前,.NET会将数据库的内容(在此问题的情况下为字符串)转换为Unicode.
如何将此Unicode字符串转换回其ASCII等效字符串?
-> (Extended) ASCII character ê (Extended ASCII 136) was inserted in the database.
-> Either Access or the reading component in .NET converted this to U+02C6 U+0065
(MODIFIER LETTER CIRCUMFLEX ACCENT + LATIN SMALL LETTER E)
-> I need the (Extended) ASCII character 136 back.
string myInput = Convert.ToString(Convert.ToChar(710));
byte[] asBytes = Encoding.ASCII.GetBytes(myInput);
Run Code Online (Sandbox Code Playgroud)
但这不会导致94而是一个值为63的字节...
这是一个新的尝试,但它仍然不起作用:
byte[] bytes = Encoding.ASCII.GetBytes("ê");
Run Code Online (Sandbox Code Playgroud)
我们目前正在为.NET开发设置源代码控制/构建/更多服务器,我们正在考虑使用Team Foundation Server(这需要花费很多成本)或者结合多个开源选项,如SourceForge Enterprise/GForge和Subversion以及CruiseControl.net等.有没有人走完全面的OSS之路,或者只有当你想要做到正确并很快开始工作时才是TFS吗?
我在C++中有一个大约有数百个唯一字符串的列表,我需要检查此列表中是否存在值,但最好是快速闪电.
我当前正在使用带有std :: strings的hash_set(因为我无法使用const char*),如下所示:
stdext::hash_set<const std::string> _items;
_items.insert("LONG_NAME_A_WITH_SOMETHING");
_items.insert("LONG_NAME_A_WITH_SOMETHING_ELSE");
_items.insert("SHORTER_NAME");
_items.insert("SHORTER_NAME_SPECIAL");
stdext::hash_set<const std::string>::const_iterator it = _items.find( "SHORTER_NAME" ) );
if( it != _items.end() ) {
std::cout << "item exists" << std::endl;
}
Run Code Online (Sandbox Code Playgroud)
如果没有自己构建完整的哈希表,有没有其他人对更快的搜索方法有好主意?
该列表是一个固定的字符串列表,不会更改.它包含受特定错误影响的元素名称列表,并且在使用较新版本打开时应该即时修复.
我在使用Aho-Corasick之前已经构建了哈希表,但我并不是真的愿意添加太多的复杂性.
我对答案的数量感到惊讶.我最后测试了几种方法来表现他们的表现,最后结合了kirkus和Rob K.的答案.之前我曾尝试过二分搜索,但我猜我有一个小错误实现它(它有多难......).
令人震惊的结果......我以为我有一个使用hash_set的快速实现......好吧,最后我没有.这是一些统计信息(以及最终的代码):
随机查找5个现有密钥和1个非现有密钥,50.000次
我原来的算法了平均18,62秒
208和208'的搜索了平均2,49秒
二进制搜索了平均0.92秒.
使用由gperf生成的完美哈希表的搜索平均花费0.51秒.
这是我现在使用的代码:
bool searchWithBinaryLookup(const std::string& strKey) {
static const char arrItems[][NUM_ITEMS] = { /* list of items */ };
/* Binary lookup */
int low, mid, high;
low = …Run Code Online (Sandbox Code Playgroud) 是否可以通过嵌入像IronPython这样的脚本语言在.NET应用程序中公开API?
怎么做?
我的页面中有一些链接
< a class="Qlink" rel="20;5" href="javascript:void(0);">5</a>
< a class="Qlink" rel="21;6" href="javascript:void(0);">6</a>
< a class="Qlink" rel="22;7" href="javascript:void(0);">7</a>
Run Code Online (Sandbox Code Playgroud)
我做一些ajax调用并获取rel属性的第一个数字(exp.20)
我怎样才能改变链接类(我的exp中的第一个)
.net ×2
c++ ×2
api ×1
ascii ×1
c# ×1
ironpython ×1
jquery ×1
open-source ×1
refactoring ×1
svn ×1
tfs ×1
unicode ×1
visual-c++ ×1