pragma相关内容
如何使用 #pragma optimize ?大多数编译器支持它,并且对此 #pragma ? 解决方案> #pragma 是编译器添加非授权和非便携式 语言扩展 * 。 基本上,你永远不知道,至少有一个主要的C ++编译器is。 * : 从C ++标准(N3242): 16.6 Pragma指令 [cpp.pragma] > 以下形式的预处理指令: #
..
我试图更新数据库版本,但是我面临一个奇怪的问题... 这里是我的代码: version = 2 local cur_db_version = nil 用于db:nrows(“PRAGMA user_version”)中的数据do cur_db_version = data break end local db_version = cur_db_version.use
..
我想创建一个Haskell程序,它绘制一些简单的2d形状到屏幕上,但当你悬停在每个形状,它打印的源代码行的形状创建。 为了做到这一点,我想要能够创建带有参数的形状的尺寸和一个表示行号的最终参数。像这样: rect1 = Shape(Rectangle 2 2 lineNumber) pre> 这将创建一个宽度为2像素,高度为2像素的矩形,并使用一个函数lineNumbe
..
如果我在c源代码文件中使用下面的两行,数据段和文本段将会发生什么情况? #pragma CODE_SECTION(func1,“Sec1”) #pragma DATA_SECTION(globalvar1,“Sec2”) 解决方案 源(包含示例): http://hi.baidu.com/jevidyang/blog/item/6d4dc436d87e3a300b55a91
..
在开发C ++应用程序时,我不得不使用第三方库,它产生了与使用无害的#pragma指令相关的大量警告。 ../ File.hpp:1:warning:忽略#pragma ident 在从../File2.hpp:47, 从../File3中包含的文件中。 hpp:57, 来自File4.h:49, 解决方案 也许请参阅 GCC诊断问题?或者,在这种情况下,您可
..
什么是Clang等同于 #pragma message #Diagnostic-Pragmas“rel =”nofollow“> GCC 和 MSVC ? 我已经把这个放在 Clang邮寄名单,并且位于现在讨论。随后,它被作为警告实施,希望很快就会在其他编译器中的行为。
..
我知道 #pragma clang diagnostics 可用于忽略clang生成的一些警告。但我不知道如何正确使用这个。 例如,对于未使用的变量警告,我们可以通过避免警告 #pragma clang诊断推送 #pragma clang诊断忽略“-Wunused-variable” int number; #pragma clang诊断pop 但我
..
我有一大堆代码崩溃,除非我用优化关闭。我正在使用LLVM编译器2.0构建 我想关闭优化,通过使用#pragma编译器指令包装违规代码;或关闭整个文件的优化。 我一直在挖掘clang手册和代码; 有没有人知道如何更改单个CU的优化(而不是整个应用)? 解决方案 您可以在Xcode中设置每个文件的编译器标志。在Xcode 4(我假设你使用的是因为LLVM 2.0引用),首先在
..
我有两个c ++ / cli dll(即编译/ clr)其中A.dll引用B.dll。在程序集B中,我有一个方法GetMgdClassB,我想从程序集A调用。这是程序集B(B.cpp)中的代码: 命名空间B { public class NativeClassB { public: NativeClassB(); // ... }; public ref clas
..
我正在学习一个winsock客户端服务器程序,并通过 #pragma comment(lib,“ws2_32.lib”)。在这里了解它的需要。 解决方案 我们可以使用它, #pragma 是实现定义的编译器命令。 这意味着,每个编译器都可以用不同的方式处理或支持pragmas。 > 它们用于生成用户定义的警告或错误,例如: #pragma warning WARNINGM
..
我有一个c ++结构: struct a { char b; int c; int d [100]; }; 结构体的大小应为405字节。 我看到结构的大小是408字节。原因是在整数“c”后8个字节对齐。数组“d”应该从结构体的第6个字节开始,而不是第9个字节。 我使用 #pragma pack(1)但它没有解决问题。 我不能改变结构中字段的顺序。
..
我尝试使用 #pragma pack(n) 。以下面的示例为例: #include using namespace std; #pragma pack(8)//或(16) struct A { int a; char b char c; char d; char e; char f; double g; }; in
..
我们可以在类之前使用#pragma pack()吗? pragma在这里的意义是什么?我知道它用于向编译器提供有关实现的信息,但是如果我们使用它与一个类怎么办? 解决方案 对类在结构上的精确效果相同,影响数据成员的对齐。 实际上在类上使用它是非常不寻常的,几乎总是一个错误。 C ++类对象的布局是严格实现定义的。 C ++编译器通常会努力优化该布局,在可能时删除v表指针。并且当
..
#pragma GCC diagnostic push it pop:warning:expected [error | warning | ignored] code> 为什么?我在Linux中使用GCC。 我有一个问题,如果我不能使用pop / push,如果忽略 only cpp,不影响其他cpp? #pragma GCC诊断推送 c $ c>
..
#pragma GCC diagnostic push it pop:warning:expected [error | warning | ignored] code> 为什么?我在Linux中使用GCC。 我有一个问题,如果我不能使用pop / push,如果忽略 only cpp,不影响其他cpp? #pragma GCC诊断推送 c $ c>
..
我包括来自第三方库的文件,该文件引发可以降级为 -fpermissive 的警告的错误。但因为我不想“污染”我的编译日志与这些警告,我想完全禁用此消息。 到目前为止,我设置 -fpermissive 选项与诊断编译指示当包括文件时;例如: #pragma GCC诊断推送 #pragma GCC诊断警告“-fpermissive” #include
..
我正在尝试延迟加载库,并使用GetProcAddress从库中获取一个函数来重复使用。我正在处理的项目有在其他情况下如何做的例子,在描述函数的typedef的头文件中,有一个#pragma aux行。这是做什么的?这总是必要的吗? 编辑:我使用vc11编译器 解决方案 这些是辅助编译指示,它是Watcom编译器的特定功能。从下面的详细说明: http://users.pja.e
..
将C ++函数暴露给C和.Net的步骤是什么?我想在C ++,C和.Net中为32位和64位版本使用相同的函数名。 我发布这个问题和答案,因为我 解决方案 这些步骤是: 将C ++函数公开为C静态库(.lib)。 使用 #pragma 语句将lib的函数投影到DLL中。 有关示例,请参阅此github项目。 步骤1.创建一个静态库项目。创建一个将每个函数作为C
..
我想写一个宏,用gcc编译器向可执行文件添加注释。这不是为了链接的目的,我只是想添加文本注释。是否有一个#pragma注释等同于gcc为此目的? 解决方案 我不知道这是什么意思“注释到可执行文件“。谁或什么将消费,显示,甚至注意这样的评论?然而,如果你只是想确保一些字符串被嵌入你的程序中的某个地方,那么只需在文件范围内声明为一个普通(C)字符串。 static const char
..
标题说的一切。有 #pragma once 已标准化为C ++ 0x吗?我不知道任何编译器不提供它的实现,几乎总是相同的语义和名称。 解决方案 所有 #pragma 指令导致实现在实现 这在C ++ 03和最新的C ++ 0x draft(n3225.pdf)之间没有改变。包括护罩是便携式的。
..