Tag: 编译器错误

运营商“??” 不能应用于'T'和'T'types的操作数

我有以下通用的方法,但VS给了我一个编译错误。 (运算符'??'不能用于'T'和'T'types的操作数) public static T Method<T>(T model) where T : new() { var m = model ?? new T(); } 有人知道为什么吗? 编辑:是否有可能的原因是T可以是一个结构在我的情况下,一个结构是一个非空types?

无法打开输出文件,权限被拒绝

所以当我试图用CodeBlocks编译C ++代码的时候,我总是收到这个错误。 无法打开输出文件[filename.exe]权限被拒绝 它只是从今天开始的,而且是零星的和不一致的。 如果我closuresCodeBlocks并重启项目,通常会消失,但并不总是如此。 有时它甚至会消失,当我按F9(build立和运行)几次。 我总是检查任务pipe理器,但是从来没有任何与我的文件名或任何与之相关的文件运行.EXE。 我也注意到,如果这个问题发生,然后我尝试删除.EXE手动或以其他方式与它交互,Windows告诉我我需要pipe理员权限这样做(这是一个私人的PC,并据我所知我是一个pipe理员)。 第一次发生的时候,除了以前版本之外,我添加到代码中的唯一东西就是一个发送给cout的debugging报告 – 几乎没有什么神秘的东西。 即使没有代码从以前的版本改变,有时也会发生。 这可能是什么? 这不是游戏突破,但它是令人讨厌的,我宁愿它没有变得更糟。 编辑:到现在为止,这是旧的,但只是以防万一谁有类似的问题,我目前使用的解决方法是只是一致地删除[filename.exe],然后再次尝试运行代码。 这可以避免这个问题,尽pipe它很烦人。

如何使用OpenSSL编译.c文件?

我正在尝试编译一个小的.c文件,它包含以下内容: #include <openssl/ssl.h> #include <openssl/rsa.h> #include <openssl/x509.h> #include <openssl/evp.h> 在相同的文件夹中,我有.c文件我有一个/ openssl与所有这些文件(和更多),也在突触包pipe理器我看到OpenSSL安装,我想用这个编译: gcc -o Opentest Opentest.c -lcrypto 但我总是得到错误: error: openssl/ssl.h: No such file or directory error: openssl/rsa.h: No such file or directory error: openssl/x509.h: No such file or directory error: openssl/evp.h: No such file or directory 我想编译的文件只是一个.c文件,没有Makefile或./configure。 我已经尝试过了: env CFLAGS=-I/path/to/openssl/ 并试图再次编译,但我得到相同的错误。 我应该怎么做才能用openssl进行编译?

致命错误:Visual Studio中的“无目标体系结构”

当我尝试在Win32或x64模式下使用Visual Studio 2010编译我的c ++项目时,出现以下错误: >C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\winnt.h(135): fatal error C1189: #error : "No Target Architecture" 我的预处理器定义说WIN32; _DEBUG; _CONSOLE;%(PreprocessorDefinitions) 什么是造成这个错误,我该如何解决它? // winnt.h: lines 127-136, MSVS says this is an inactive preprocessor block #if defined(_WIN64) #if defined(_AMD64_) #define PROBE_ALIGNMENT( _s ) TYPE_ALIGNMENT( DWORD ) #elif defined(_IA64_) #define PROBE_ALIGNMENT( _s ) (TYPE_ALIGNMENT( _s ) > TYPE_ALIGNMENT( DWORD […]

在C#4.0中命名参数和genericstypes推断

我一直在编程的假设是,当在C#4.0中调用方法时,为参数提供名称不会影响结果,除非这样做是“跳过”一个或多个可选参数。 所以我有点惊讶地发现以下行为: 给定一个采用Func<T> ,执行它并返回结果: public static T F<T>(Func<T> f) { return f(); } 另一种可以看到上述方法的方法: static void Main() { string s; 调用F(没有命名参数)编译没有任何问题: s = F<string>(() => "hello world"); // with explicit type argument <string> s = F(() => "hello world"); // with type inference 而当使用命名参数… s = F<string>(f: () => "hello world"); …使用显式types参数的上述代码行仍然编译没有问题。 也许不会太奇怪,如果你安装了ReSharper,它会提示“Type参数规范是多余的”。 但是,当删除types参数… s […]

maven“无法find符号”的消息无益

这是一个非常简单的问题,它可能是一个我不知道的地方,但是Google对这个问题特别没有帮助,给出了关于编译错误的结果,而不是如何改变编译错误信息。 当我用maven构build我的项目时,它会给我大致如下格式的错误消息: [错误] /path/to/source/Main.java:[13,8]错误:无法find符号 当我用ant或javac构build时,它实际上会告诉我它在错误消息中找不到的符号。 maven给我一个行号和字符位置,但是显示实际的符号会更有帮助。 上面的行是每个“找不到符号”错误的唯一行。 没有上面或下面的线条给出的符号。 我想有一些方法可以让maven告诉我这些信息,但我不知道它是什么。 我尝试了-e选项,因为mvn告诉我尝试使用它,但它给了错误的maven回溯,而不是实际的符号。 任何帮助? 这是mvn –version的输出 Apache Maven 3.0.4 (rNON-CANONICAL_2012-10-24_11-25_mockbuild; 2012-10-24 07:25:04-0400) Maven home: /usr/share/maven Java version: 1.7.0_09-icedtea, vendor: Oracle Corporation Java home: /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.9.x86_64/jre Default locale: en_US, platform encoding: UTF-8 OS name: "linux", version: "3.6.6-1.fc17.x86_64", arch: "amd64", family: "unix" 这里有一个示例(无用的)错误信息,正如maven的输出(只是缩短了目录): [INFO] ————————————————————- [ERROR] COMPILATION ERROR : [INFO] ————————————————————- […]

C编译错误:“可变大小的对象可能不会被初始化”

为什么我收到错误“variables大小的对象可能不被初始化”与下面的代码? int boardAux[length][length] = {{0}};

PyCharm能列出项目中的所有Python错误吗?

我在一个虚拟环境中使用python 2.7,并使用PyCharm 2.7(2013年2月7日新build)。 每当我打开一个含有明确错误(相当于编译其他语言错误,例如使用未声明的variables,调用不存在的函数)的Python文件时,它会在文件的装订线中显示红色条纹。 所以,当我碰巧导航到包含它们的文件时,我随机地发现错误。 我真正想要的是能够在一个单独的窗口中列出所有的Python错误。 Visual Studio 2005/2008/2010 IDE具有单独的“错误”视图,该视图用文件名和行号列出了所有这些视图,并使我能够单击这些错误中的任何一个,并直接导航到资源。 PyCharm有这样的吗?

严重的错误与int提升/可空转换,允许从十进制转换

我认为这个问题会使我立即在Stack Overflow上成名。 假设你有以下types: // represents a decimal number with at most two decimal places after the period struct NumberFixedPoint2 { decimal number; // an integer has no fractional part; can convert to this type public static implicit operator NumberFixedPoint2(int integer) { return new NumberFixedPoint2 { number = integer }; } // this type is a […]

cc1plus:错误:无法识别的命令行选项“-std = c ++ 11”与g ++

我正在尝试使用g++和-std=c++11或c++0x标志进行编译。 但是,我得到这个错误 cc1plus: error: unrecognized command line option "-std=c++11" g ++ –version g++ (GCC) 4.1.2 20080704 (Red Hat 4.1.2-54) Copyright (C) 2006 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.