标签: pragma

Qt的pragma指令

有人能指出我的文章,在Qt环境中可用的pragma指令会被讨论吗?

c++ compiler-construction qt pragma c-preprocessor

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

任何人都可以告诉我使用pragma语句

任何人都可以告诉我在C和Ada中使用pragma,如果可能的话还有一些例子.

c ada pragma

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

将char*转换为字符串文字

我想使用带有#pragma消息的char*来告诉Visual Studio调试器中我的问题所在.

void OutputShaderErrors(const char *filename)
{
  std::string outputMessage = "Errors written to: ";
  outputMessage += filename;

  #pragma message(outputMessage.c_str())
}
Run Code Online (Sandbox Code Playgroud)

上面的代码块确实有效,但给出了以下警告:

Warning 1   warning C4083: expected 'string'; found identifier 'outputMessage'
Run Code Online (Sandbox Code Playgroud)

c++ pragma string-literals

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

如何使用openMP使这段代码线程安全?

下面显示的示意图代码可以正常工作,如果我删除 #pragma omp parallel for,但有了这个代码编译,但然后执行二进制文件我得到像*** glibc detected *** ./testBin: double free or corruption (!prev): 0x0c43d8d8 ***和的错误core dumped.我猜的原因是多个线程试图写入变量omega, ell, ....lineVec.我该如何解决?有没有办法告诉它变量是共享的?或者通常只有另一种方法可以并行执行此循环.我对`openmp完全不熟悉,这是我第一次使用它.

#include <omp.h>


int main( int argc , char **argv )
{ 
 vector <vector<string>> fileVec;
 //some code that reads in a CSV file lines into elements of fileVec

//variables constituting a line:
//my_float has been typedef to be a high precision class in real code
my_float omega;
my_float ell;

my_float init1Real;
my_float init1Imag; …
Run Code Online (Sandbox Code Playgroud)

c++ pragma openmp thread-safety

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

为什么警告禁用429无法抑制无法访问的代码?

我试图在一个非常简单的C#文件中抑制警告,但是它无法正常工作,我找不到我在这里做错了什么.为什么Visual Studio仍会在这一小段代码中显示"无法访问的代码".

#pragma warning disable 429

// I've got the number from:
// http://msdn.microsoft.com/en-us/library/2ch1a3w5.aspx

// This below does work, so I might have the wrong number for the warning?
// #pragma warning disable 

using System;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            MessageBox.Show("test");
            if (false)
                return;
            return;
            MessageBox.Show("test");
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

c# pragma compiler-warnings

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

gcc相当于#pragma comment

我正在尝试编写一个宏,使用gcc编译器为可执行文件添加注释.这不是用于链接目的,我只是想添加文本注释.为此目的,gcc中是否有#pragma注释等效?

c++ gcc pragma

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

GCC矢量化语用

使用intel编译器,如果用户确认没有使用依赖关系,则仍然可以对循环进行矢量化#pragma ivdep.

我在GCC找到了一个#pragma GCC ivdep,但收到如下错误:

warning: ignoring #pragma GCC ivdep [-Wunknown-pragmas] #pragma GCC ivdep

gcc pragma vectorization icc auto-vectorization

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

将多个pragma伪指令放入一个预处理器定义中

我需要在我的代码中推送/弹出几个gcc诊断程序.如果在单个文件中需要,我会执行以下操作:

#pragma GCC diagnostic push
#pragma GCC diagnostic error "-Wformat"
#pragma GCC diagnostic error "-Wuninitialized"

...some code...

#pragma GCC diagnostic push
Run Code Online (Sandbox Code Playgroud)

但我需要在多个地方使用它.所以我想要一个#define或类似的东西.我想到了以下内容,但c预处理器不允许#define中的#pragmas.

#define PushWarnings \
    #pragma GCC diagnostic push \
    #pragma GCC diagnostic error "-Wformat" \
    #pragma GCC diagnostic error "-Wuninitialized"
Run Code Online (Sandbox Code Playgroud)

有没有办法实现这个目标?

c c++ pragma c-preprocessor

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

HTTP 客户端 NoCache 标志导致空引用异常 C#

我添加了这一行以在 HTTP 客户端中不应用缓存

HttpClient httpClient = new HttpClient();
httpClient.DefaultRequestHeaders.CacheControl.NoCache = true;
Run Code Online (Sandbox Code Playgroud)

当我运行之前运行良好的应用程序时,我在第二行中收到此异常:

NullReferenceException:未将对象引用设置为对象的实例

我试过这是应用运行良好的 NoChache 标志,但我不确定它是否符合预期。

HttpClient httpClient = new HttpClient()
{ 
    DefaultRequestHeaders=
    { 
        CacheControl = CacheControlHeaderValue.Parse("no-cache, no-store"),
        Pragma = { NameValueHeaderValue.Parse("no-cache")}
    }
};
Run Code Online (Sandbox Code Playgroud)

请帮助我应用正确的方法来设置 NoCache 标志。

c# httpclient pragma cache-control xamarin.forms

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

为什么在启用实验性功能时,pragma命令很重要?

它的定义行为是顺序featuresuse version重要的吗?

use feature 'signatures';
use v5.026;
Run Code Online (Sandbox Code Playgroud)

VS

use v5.026;
use feature 'signatures';
Run Code Online (Sandbox Code Playgroud)

顶部会产生错误,

全局符号需要显式包名称

use feature 'signatures';                                                                                        
use v5.026;                                                                                                      

sub foo ($opt1, $opt2 = undef) {                                                                                 
  say $opt1 if $opt2;                                                                                            
}
Run Code Online (Sandbox Code Playgroud)

perl pragma

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