visual-c++-2010相关内容

Visual C++2010中的预处理器指令缩进

我经常发现自己在希望像其余代码一样缩进预处理器指令的情况下(例如#if缩进,如if)。它seems legal,它是common sense that it's sometimes a good thing,但Visual不会让它变得容易。 有没有办法防止每次我无意中按#时,Visual C++2010编辑器都会将代码粘在左边?并且不使用自动缩进(CTRL+K、CTRL+F)中断预处理器指令的缩 ..

嵌入汇编程序以在可移植 C++ 中操作 64 位寄存器

我有一个简单(但性能关键)的 C (嵌入在 C++ 中)算法来操作数据缓冲区......该算法“自然"使用 64 位大端寄存器值 - 我想优化这使用汇编程序来直接访问进位标志和 BSWAP,因此避免了一次操作一个字节的 64 位值. 我希望解决方案能够在操作系统/编译器之间移植——最低限度地支持 GNU g++ 和 Visual C++——以及分别在 Linux 和 Windows 之间移植 ..
发布时间:2022-01-23 20:34:42 C/C++开发

如何在 CWinApp 中获取 WM_POWERBROADCAST 消息?

我创建了继承CWinApp的类,这个类有一个定时器(使用窗口定时器). 当 PC 进入睡眠模式并唤醒时,定时器回调称为唤醒的确切时间.当PC从挂起恢复时,我想不调用定时器回调. 所以我尝试使用 WM_POWERBROADCAST 消息.但是此消息没有在 PreTranslateMessage() API 中捕获.我也尝试了 SetWindowLong() 与我自己的 API,但仍然没有 ..

VC++ 10 MFC:进行本地化的正确方法是什么

我是一名 .NET 人员,必须在 MFC 应用程序上做一些工作.该应用程序是一个 VS2008 MFC 可执行文件,我已将其转换为 VS2010.最初的开发人员通过在应用程序命令行中指定包含键值对的 .txt 文件的名称来进行本地化.已安装的可执行文件快捷方式会根据应用程序安装在哪个国家/地区指定不同的 .txt 文件.如果您只是直接运行 .exe,这当然不起作用.这对我来说似乎是一种奇怪的做事方 ..

g++ 的 -g 选项相当于 VS2010 cl 编译器?

使用带有 -g 选项的 g++,我可以使用 gdb 进行调试. Visual Studio 2010 cl.exe 编译器与此选项的等效项是什么? 这个页面有不同的库(调试/发布)用于链接. 如果我使用 cl.exe 的调试选项进行编译,是否必须使用相应的库链接选项(/MD/MT vs/MDd/MTd)? 解决方案 这个问题有几个单独的部分:如何告诉编译器/链接器生成和保 ..

Visual Studio 2010 的奇怪“警告 LNK4042"

我刚刚被来自 Visual Studio 2010 (C++) 的一些重要警告击中了(相当严重). 编译给出了以下输出: 1 Debug\is.obj : 警告 LNK4042: 对象指定不止一次;额外被忽略 1 Debug\make.obj : 警告 LNK4042: 对象指定不止一次;额外被忽略 1 Debug\view.obj : 警告 LNK4042: 多次指定对象;额外被 ..

在 Visual C++ 中 switch 是如何编译的,它的优化和速度如何?

当我发现我只能在 C++ 的 switch 语句中使用数值时,我认为它与一堆 if-else的. 因此我问自己: (如何)switch 与 if-elseif-elseif 在运行速度、编译时间优化和一般编译方面有何不同?我在这里主要说的是 MSVC. 解决方案 一个开关经常被编译成一个跳转表(一个比较来找出要运行的代码),或者如果这不可能,编译器可能仍然对比较重新排序,以便在 ..

用 C++ 建模服装

我希望编写一些最终会绘制人体框架的软件(可以使用各种参数对其进行配置),并且计划是在假人上放置某种衣服. 我已经研究过 Blender、OpenGL 库以及其他渲染和物理引擎,我不是在找你告诉我如何做到这一点,但主要是我想知道有哪些库可以做这种事? 因此,在 2d 中会有一个服装图案,然后系统(至少在理论上)将能够将其转换为例如衬衫的 3d 表示?然后把它放在人体框架上.我知道为此我需 ..
发布时间:2021-11-25 02:17:46 C/C++开发

如何在Win32 C++中的后台运行程序时检测KeyPress

我有一个程序,每当我最小化它时,它就会进入系统托盘. 我想知道的是:a) 当我的程序在系统托盘中时,我怎么能检测到按键按下.b) 我怎么知道他们在键盘上按了什么,特别是功能按钮. 解决方案 您需要使用 SetWindowsHookEx().查看 WH_KEYBOARD 和 WH_KEYBOARD_LL 钩子. ..
发布时间:2021-09-25 18:49:46 其他开发

当数组大小太大时,C++ 程序停止工作

我在 MVC++ 2010 中用 C++ 编写了一段代码.在其中,程序迭代一维指针数组(双 *)的元素.但是,当我使输入(指针数组的大小)非常大(例如 15000)并运行程序时,它停止工作并显示一个窗口以关闭程序,因为它没有响应!有什么问题? 这是构建我正在谈论的数组的部分代码: mapCF;CoefficientMap(CF);double *T = new double[I * J]; ..
发布时间:2021-09-18 19:20:29 C/C++开发

使用标准 #ifndef MS-VC++ 覆盖 #pragma 一次

我还没有看到这个问题的任何答案(这可能意味着它是不允许的),但我想我还是会问. 有什么方法可以覆盖使用 MS Visual-C++ 创建的 .h 或 .hpp 文件中 #pragma once 的自动生成使用便携式友好预处理器指令的标准头保护? #ifndef _V_DESCRIPTOR_#define _V_DESCRIPTOR_//这里有一些代码#万一 解决方案 为了回答您真正的问 ..
发布时间:2021-09-18 19:16:00 其他开发

printf 64位类型说明符问题

我在 msdev 2010 中看到 __int64 类型的一些奇怪行为.有人能告诉我发生了什么吗?我想这里有两个问题,首先是如何显示 64 位整数,其次是行为 - 即为什么看起来 __int64 实际上是 32 位整数... #include int main(){int vl_idx;无符号 __int64 vl_64;无符号 __int64 vl_64_test;对于 (vl_idx = 0 ..
发布时间:2021-09-18 19:13:01 其他开发

如何在 64 位 C++ 代码中使用暂停汇编指令?

由于 VC++ 2010 不支持 64 位代码中的内联汇编,我如何将 pause x86-64 指令添加到我的代码中?似乎没有像许多其他常见汇编指令(例如,__rdtsc()、__cpuid() 等)那样的内在函数. 在为什么方面,我希望指令帮助处理繁忙的等待用例,以便(超线程)CPU 可用于在所述 CPU 上运行的其他线程(请参阅:性能洞察 intel.com).pause 指令对于这个用 ..
发布时间:2021-09-18 19:00:40 其他开发

Visual Studio Express 2010 许可证

我可以将 Visual C++ 2010 Express 编译器用于商业用途吗?据我所知,它在 2010 版本之前总是被允许的,但是现在当我启动 IDE 时,它会写“仅用于评估目的".我在任何地方都找不到完整的许可证文件(不在已安装的文件中,不在 Google 中),所以我怀疑是应该使用它,还是应该降级到 MSVC++2008 版本. 解决方案 我认为你只需要注册它.在帮助菜单中单击注册产 ..
发布时间:2021-09-18 18:55:23 其他开发