小编Nic*_*ick的帖子

如何将反射添加到C++应用程序?

我希望能够内省一个C++类的名称,内容(即成员及其类型)等.我在这里说的是原生C++,而不是托管C++,它有反射.我意识到C++使用RTTI提供一些有限的信息.哪些额外的库(或其他技术)可以提供此信息?

c++ reflection templates sfinae

242
推荐指数
19
解决办法
19万
查看次数

GPL v2和GPL v3许可有什么区别?

简单来说,GPL v2和GPL v3开源许可证的原因是什么,有什么区别?对于法律术语和进一步描述的解释和参考将不胜感激.

licensing

165
推荐指数
4
解决办法
6万
查看次数

有没有人用Sphinx来记录C++项目?

Sphinx是Python的新文档工具.它看起来非常好.我想知道的是:

  • 这对于记录C++项目有多适合?
  • 是否有任何工具可以将现有文档(例如doxygen)转换为Sphinx格式?
  • 是否有使用Sphinx的C++项目的在线/可下载示例?
  • 任何使用过Sphinx的人提示?

python documentation python-sphinx

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

我可以克隆Mercurial存储库的一部分吗?

是否可以克隆Mercurial存储库的一部分?假设存储库非常大,或者包含多个项目或多个分支.我可以只克隆部分存储库吗?

例如在Subversion中,你可能有trunkbranches.如果我只想获得主干(或其中一个分支),我可以请求[project]/trunk.如果我克隆hg repo,我会获得trunk和所有分支.这可能是我不想要的很多信息.我可以避免这个吗?

或者,如果我想在一个hg仓库中拥有多个项目,我该怎么做?也就是说,我可能会得到其中一个项目并忽略其他项目.

mercurial dvcs

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

Kineticjs vs Raphaeljs

我正在使用HTML5开始一个新项目.两个最流行的图形工具包是KineticJSRaphaelJS.如果您有使用这些的经验,您有什么建议吗?它们提供哪些功能,并且使用一个优于另一个?

例如,只有RaphaelJS适用于旧版浏览器(但这不是我要求的功能).

html5 canvas raphael kineticjs

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

如何在python中"点击任何键"?

我如何在Python中"点击任何键"(或获取菜单选项)?

  • raw_input要求你回击.
  • Windows msvcrt有getch()和getche().

有没有一种可移植的方法来使用标准库?

python

30
推荐指数
4
解决办法
3万
查看次数

什么是XML的良好替代数据格式?

被授予的XML非常有用,但可能非常冗长.有什么替代品,它们是否专门用于任何特定目的?图书馆支持轻松查询内容是一个很大的优点.

xml serialization data-structures

19
推荐指数
4
解决办法
7662
查看次数

生成独特的颜色

我想在纹理中绘制一些数据:连续多个项目.它们不是按顺序创建的,它们可能都是不同的大小(想想内存堆).每个数据项都是一个小矩形,我希望能够区分它们,所以我希望它们中的每一个都有一个独特的颜色.

现在我可以使用rand()生成RGB值并希望它们都不同,但我怀疑我不会在RGB空间中获得良好的分布.有比这更好的方法吗?例如,在它们(几乎)重复之前循环使用不同颜色的好方法是什么?

颜色不必与项目中的任何数据匹配.我只是希望能够看到许多值,并看到它们是不同的,因为它们是相邻的.

我可以解决一些问题,但我认为这是一个有趣的问题.:)

algorithm visualization color-space

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

协议缓冲区的替代方案

我想要一个基本的消息传递/ RPC系统.我可以使用序列化系统,但我想要某种验证以确保两端同步.我看过Google Protocol Buffers,但我不太热衷于代码生成.还有什么其他选择?

messaging serialization

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

如何使用C#的MS DIA SDK?

我正在尝试使用C#的Microsoft Debug Interface Access SDK.这是随Visual Studio一起安装的,但是文档似乎没有提到你如何在C#中使用它.

我在interweb上找到了示例代码,但没有关于如何链接到DIA SDK的信息.即我无法将其作为装配导入.我不认为我必须将它包含在托管C++应用程序中并将其用作COM(这将是地狱).

有一个IDL文件,这是正确的方法吗?如果是这样,怎么样?


编辑:以下将创建类型库以用作引用的程序集.粘贴到批处理文件中.

call "%VS80COMNTOOLS%\vsvars32.bat"
midl /I "%VSINSTALLDIR%\DIA SDK\include" "%VSINSTALLDIR%\DIA SDK\idl\dia2.idl" /tlb dia2.tlb
tlbimp dia2.tlb
Run Code Online (Sandbox Code Playgroud)

.net c# debugging dia-sdk

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