草庐IT

STL测量

全部标签

c++ - 使用 C++/STL 将 std::vector<CString> 展平为 multi_sz 的推荐方法是什么

我想将存储在std::vector中的字符串列表(ATL::CString)写入Windows注册表中的REG_MULTI_SZ值。我知道如何在普通C中执行此操作(迭代一次以获得总长度,分配一个缓冲区,将字符串复制到由“\0”分隔的缓冲区)。知道我使用STL尝试了以下操作(抱歉,我必须将VS2010与“foreach”一起使用):std::vectormultiline_sz;foreach(CStringentryinmyStringList){TCHAR*buf=entry.GetBuffer();multiline_sz.insert(multiline_sz.end(),&bu

c++ - 如何测量 Windows 上进程使用的用户时间?

在linux上我们可以使用“时间”命令。或者来自C++:#include#includeintgetrusage(intwho,structrusage*usage);如何在Windows上做最接近的事情? 最佳答案 GetProcessTimes这给出lpUserTime[out]:指向FILETIME结构的指针,该结构接收进程在用户模式下执行的时间量。确定进程的每个线程在用户模式下执行的时间,然后将所有这些时间加在一起得到这个值。 关于c++-如何测量Windows上进程使用的用户时

c++ - 如何测量亚秒级持续时间?

在我的类似计算器的程序中,用户选择要计算的内容和数量(例如,圆周率有多少位,质数有多少等)。我使用time(0)检查经过的计算时间以触发超时条件。如果计算在没有超时的情况下完成,我还将打印所用的计算时间,其值存储在double中,difftime()的返回类型。我刚刚发现计算的时间值仅以秒为单位。我不希望用户输入100和10000个结果都打印0e0秒的计算持续时间。例如,我希望它们分别打印1.23e-6和4.56e-3秒的持续时间(尽可能准确地测量机器-我更熟悉Java提供的准确性以及科学测量的准确性,因此这是个人偏好)。我看过其他问题的答案,但它们没有帮助,因为1)我不会多线程(在我

用于 STL 容器的 C++ IDE

哪些C++IDE在Debug模式下原生支持STL容器View?一个IDE是VisualStudio,但我希望从它转移,并希望在Debug模式下使用STL容器。现在专门寻找WindowsIDE,欢迎使用其他操作系统IDE。 最佳答案 eclipse!“CDT调试现在支持使用GDB7.0或更高版本完全漂亮地打印STL结构。这意味着复杂的结构,如map、列表和vector,将以用户友好的方式显示。”(source)(CDT是Eclipse的C/C++开发工具) 关于用于STL容器的C++IDE

windows - 测量程序的 CPU/RAM 使用情况

谁能建议一种方法(除了使用任务管理器)来跟踪和记录程序对CPU和RAM的使用情况以分析其性能?我在Windows下工作。通用的东西会很有用。更具体的请求解决方案将涉及VisualStudio。我试过PerformanceWizard,但它似乎没有提供我需要的信息。谢谢 最佳答案 ProcessExplorer可能会有用。 关于windows-测量程序的CPU/RAM使用情况,我们在StackOverflow上找到一个类似的问题: https://stackov

python - 测量pyc和py文件之间的性能差异

首先,我知道py和pyc文件的区别。我也明白这两个文件的运行时间是一样的。但我在这里有一个疑问。pyc删除与python执行相关的加载时间。我有什么办法可以感知到这一点?当我运行一个普通的py文件时,加载需要x秒,运行需要y秒。pyc文件也需要y秒才能运行。有没有一种方法可以测量两者之间的x秒差异? 最佳答案 Python.py文件被编译成.pyc文件。.pyc文件是python解释器可以理解和执行的文件。因此,您必须清楚编译和加载是不同的。编译就是将.py文本格式的源文件转换为.pyc二进制格式的字节码。加载是指将.pyc文件中存

c++ - 如何在 STL 中使用 libclang?

我正在尝试使用libclang解析一个库,但我遇到了一个可能非常简单的问题:如何使用STL配置它?目前,它无法解析翻译单元,因为找不到.这是我尝试过的:char*args[]={"-x","c++","-Ic:/my/library/includes","-IG:/Prog/libcxx-3.4/include"};clang_parseTranslationUnit(index,"c:/my/library/test.cpp",args,4,0,0,0);我在Windows上,使用从llvm.org下载的预编译clang二进制文件,我尝试了各种STL实现:VisualStudio铭文

c - 测量进程的生命周期(因为它被加载到内存中)

进程是否有显示其生命周期的任何属性(自加载到内存以来)用于提取此信息的WINAPI是什么?我希望能够测量系统中任何进程的生命周期 最佳答案 我认为您在寻找GetProcessTimes函数。您提供一个进程的句柄(您可能需要具有适当的安全属性),还提供几个指向FILETIME结构的指针,您可以将其转换为SYSTEMTIMEwithFileTimeToSystemTime.FILETIME对象之一指的是进程的创建时间,这可能是可执行文件加载到内存时最接近的时间。 关于c-测量进程的生命周期(

python - 用于测量代码覆盖率的 CoveragePy 命令

简介包含test和mainpython文件的目录已创建。执行测试工作:C:\...>pytest/test.py..----------------------------------------------------------------------Ran2testsin0.001sOK根据thisdocumentation可以使用命令行测量代码覆盖率。已经发出了一些命令:C:\...>coveragerun--source="C:\path\to\test"Nothingtodo.Use'coveragehelp'forhelp.C:\...>coveragerun--sour

c# - 测量下载速度

我的应用程序将使用代理,其中一些代理,我如何找出每个代理提供的下载速度,我想首先使用速度最快的代理,寻找简单的实现方式。请提供建议,也欢迎提供粗略的想法。提前谢谢你。 最佳答案 您可以使用多个动态创建的后台worker从每个代理启动下载使用基于的算法http://www.devtoolshed.com/content/c-download-file-progress-bar您可以使用ReportProgress句柄来测量下载速度并停止具有最高延迟的后台工作程序。使用这种技术,您可以选择只从每个代理下载5-10%,然后丢弃最慢的