23得票8回答
你写过哪些使用#pragma的代码,它们有什么用处?

我从来不明白为什么要使用#pragma once,当使用#ifndef #define #endif就可以了。 我看到过使用#pragma comment与其他文件链接的用法,但是在IDE中设置编译器设置更容易。 还有一些其他有用但不太常见的#pragma用法是什么? 编辑: 我不仅仅...

93得票4回答
有选择地禁用GCC警告,仅针对翻译单元的部分

最接近这个 MSVC 预处理器代码的 GCC 等效物是什么?#pragma warning( push ) // Save the current warning state. #pragma warning( disable : 4723 ) ...

49得票3回答
C++:#pragma comment(lib, "XXX") 实际上对“XXX”做了什么?

我背景是C#,但我需要维护一些遗留的(MS)C++代码。在那个代码库中,我遇到了以下问题:#pragma comment(lib, "OtherLib700.lib") 700是某个版本号。此外,该库是一个带有相同名称的DLL。 我最初认为程序将依赖于该DLL,但是在从系统中删除它后,程序仍...

14得票1回答
在Visual Studio中有没有一种方法可以不在抛出特定异常时中断调试?

是否有任何Pragma或调试器属性可以使调试器不在抛出特定异常时中断,即使在Debug >> Exceptions菜单下我已经告诉它在任何CLR异常被抛出时都要中断? 通常在开发过程中,我喜欢在调试时中断异常,以便立即检查它们。有时候有一些特殊情况,在这些情况下已知某些代码块偶尔会抛出异常并...

10得票3回答
#pragma once的可携式替代方案

有人能告诉我一些针对各种编译器支持#pragma once指令的解决方法吗? 我想在我的头文件中使用类似以下的语句:#if _MSC_VER > ... || __GNUC__ > ... || ... #pragma once #endif 也许它已经存在于boost源代码...

13得票1回答
我应该在Xcode中使用“#pragma GCC ...”还是“#pragma clang ...”?

我应该使用这些中的哪一个来忽略一个警告?#pragma clang diagnostic ignored "-W<warning>" #pragma GCC diagnostic ignored "-W<warning>" 这两种方法对我来说似乎都可以,但哪一种是正确的...

9得票1回答
如何使用#pragma在G++中启用优化

我希望在不使用命令行参数的情况下启用g++的优化。我知道GCC可以通过在代码中写入#pragma GCC optimize (2)来实现。但是在G++中似乎行不通。 这个页面可能会有所帮助:http://gcc.gnu.org/onlinedocs/gcc/Function-Specific...

18得票5回答
#pragma once 在头文件保护内的作用是什么?

刚刚在<boost/asio.hpp>中看到了这个#ifndef BOOST_ASIO_HPP #define BOOST_ASIO_HPP #if defined(_MSC_VER) && (_MSC_VER >= 1200) # pragma once ...

13得票5回答
我能否通过编程启用/禁用异常中断?

我希望能够在调试时像Visual Studio 2008的菜单Debug/Exception Dialog中一样,在异常出现时中断程序...但是我的程序在我希望调试的部分之前,可能会有许多有效的异常。 因此,是否可能使用#pragma或其他方法自动地启用和禁用它,而只在特定的代码段中发生?

7得票1回答
Pragma UDF是如何工作的?

最近,我阅读了有关Oracle数据库12中UDF Pragma优化方法的内容。 我非常想知道它是如何工作的。在Oracle文档中,我只找到了非常简短的描述。 据我所知,PL/SQL中的每个Pragma都是一种编译器指令(我可能在这里错了),类似于C++ Pragma指令。 也许有人可以向...