基于常数值强制C#编译器错误

我有一个C#类中定义的私有const int的。 我想编译失败与错误,如果这个INT模3的值!= 0,我怎样才能做到这一点?

--------------解决方案-------------

蒂莫西·扈利几乎得到了它。 它应该是这样的:

int compilerError = 1 / (MY_CONST % 3 == 0 ? 1 : 0);

虽然产生编译时错误的#ERROR预处理器指令,也没有办法为它基于对一个const值的存在。 只带编译符号的作品,如“DEBUG”,为它的值不能进行分配。

对不起,该代码我下面说都不行,但是这将:)

int pointless = 1 / (MY_CONST % 3);

为什么这将工作的原因是因为你会得到一个编译时错误“不能由零devide”。 你的“MY_CONST”字段必须是任何(一旦由改装成3)将不等于零。

尝试这个:

if (MY_CONST % 3 != 0) { int compilerError = 1 / 0; }

分类:C# 时间:2012-01-01 人气:0
本文关键词: C#编译器建设
分享到:

相关文章

  • 编译器建设和DirectX 2012-09-14

    我在设计和编码一个项目的过程初学者,我已经把所有的想法在我的头上,但我有一个问题继续阻碍该项目的我. 我觉得代码是丑陋,无法读取,我不能继续这样说. 该项目是一种编程语言,我已经在我的脑海,而且它具有体积小的图形处理能力. 即使是初学者,我想用的DirectX,因为每个人都希望它来编写它. 我想完全编写它,不依赖于任何包装库,比如SDL. 我做了DirectX模块的重构和它暴露的所有weaks. 有Direct3D的代码随处可见,但代码本身确实非常少! 我不知道这是不是我设计的故障或Direct

  • 什么是实际的编译器建设一些好的资源? 2013-02-14

    重复:学习写一个编译器 今年夏天,我正在编译器与另一名学生作为暑期"自学"等课程. 我们都将在项目中携手合作,但我们收到的最小一流的时间. 相反,我们有每周一次的教授在暑假期间,以显示我们的进展,并要求我们可能已经积累了任何问题,满足. 我和我的搭档也早就决定了要构建一个编译器从开始到结束,因为我没有别的班今年夏天,我们应该有一次像样的数目投入到它. 什么是对〜实用〜编译器构造一些好材料? 我已经拿起龙书,我打算相当仔细阅读的副本. 它应包括大部分我们所需要的理论. 我们应该写什么语言

  • 编译器建设使用JFlex的CUP和形式要求规范语言 2013-12-21

    我计划建立编译器要求规范语言. 我想出了利用JFlex的词法分析器和银联作为解析器的想法. 任何一个可以让我知道这是可能使用JFlex的CUP,并正式规范语言? 所有文档和教程都与唯一的编程语言. 任何可用的建筑形式语言的编译器教程. --------------解决方案------------- 词法分析器和解析器生成不在乎你的langauge是"传统的计算机的langauge",只有你的langauge有他们可以处理语法规范. Ofteh你得到了这样的语法规范的方式,是采取规范的正

  • 使用gfortran编译器建设TINKER包 2014-11-17

    我希望能够以逐步TINKER分子建模软件包在Mac OSX 10.6.8. 它可以在http://dasher.wustl.edu/ffe/与文档有关如何构建使用包gfortran(Fortran编译器,我使用)被发现. 这些指令都在guide.txt文件(在补锅匠完整的分销提供(GNU的gzip,18.1兆)),但我的能力水平低,因此我可能失去了一些东西. TINKER编译一堆单独的包. 我想编译和调试多文件'分析'方案,但我没有什么经验,没有FORTRAN编译或使用.使文件. 随着单行方案,

  • 解析后的符号表人口; 编译器建设 2014-12-22

    创建解析树后,我现在来填充符号表. 我要存储信息,如 类型,范围,补偿等的标识符. 现在,我怎么知道的类型,标识的范围,因为我所知道的是该特定ID词位值和行号(词法分析后). 我如何得到对整个事情. 谢谢. --------------解决方案------------- 现在,我怎么知道的类型,标识的范围,因为我所知道的是该特定ID词位值和行号(词法分析后). 正如EJP提到的,你需要通过一步解析树. 你的树应该已经创建,这样你可以做一个中序遍历,参观在其源代码语句和表达式求值的顺序相同的每个节

  • 写作对C编译器的时候面临的问题 2012-03-27

    有人能列出面临的人的问题,同时为C编程语言(不是C ++)编译器? 提前致谢 --------------解决方案------------- 下面是在GCC C99支持状态的摘要. http://gcc.gnu.org/c99status.html 我想,这人一个特别的群体遇到写自己的C编译器,这些可以被视为"问题",但我相信大部分或所有的人都/只的问题,因为GCC支持多种平台 - 解决这些问题的一个平台同时会容易得多. 随着今天的有关编译器建设理论扎实,写一个C编译器是不是有经验的程

  • 在解析器,口译和编译器学习资源 2012-04-20

    我一直想玩弄写我自己的语言,而现在(表面上是为了学习经验),因此需要在分析器,口译员和编译器的建设相对接地. 所以: 有谁知道任何良好的资源对构建分析器,口译员和编译器? 编辑:我不是在寻找的编译器编译器/分析器,编译器,如莱克斯,yacc和野牛... --------------解决方案------------- 我读过的编译器的最佳论文是过时的1964年 "META II语法化的编译器书写语言",由瓦尔Schorre. (http://doi.acm.org/10.1145/800

  • 我在哪里可以在C#编译器做什么读了? 2012-07-03

    纵观这个网站我经常看到有人回答这样的问题的答案是"它的工作原理一样,因为编译器替换[事物]与[其他的事情]",所以我的问题是,人家怎么知道/了解吗? 我在哪里可以学习这些东西? --------------解决方案------------- 对于C#编译器是如何理解的代码的最权威来源是C#语言规范. http://www.microsoft.com/download/en/details.aspx?id=7029 另外,下面的博客提供了更多的有识之士到C#语言. 对于任何强制性的阅读谁

  • Lisp语言的编译器设计 2012-08-20

    我要寻找一个编译器设计的书. 我在大学学习它; 但讲座,从来就不是我. 此外,在我的大学,他们没有做多大的实际,我相信即使我真诚地做的过程中对有限自动机和编译器的设计,我不知道如何实现一个编译器. 于是,我找了有关实现一个编译器的书. 我觉得"现代编译器实现"好. 它有语言的三个选择,我选的C本书,因为C是一个小语种将会有更多的为我做多的做过程中学习. 不过,我想学的课程设计编译器的Lisp或Python [可能是同一种语言过于]. 但我找不到太多的材料可用. Lisp是一个古老的语言

  • 什么是落实在C#编译器最有趣和最有前途的方法? 2013-01-10

    我只是在一个应该持续6个月我的毕业设计的开始. 该项目的目标是实现一个.net编译一个脚本语言. 我有编译器建设作为我的课程主题和我知道的基本步骤如何在一般实现一个编译器,但我们使用野牛和简单的编译器使用GCC作为后端,因此我不知道很多关于实施的编译器在.Net平台. 关于这一主题已经进行了一些研究,我发现代码生成下面的替代性解决方案(我不是在谈论编译器的其它重要部件,就像一个解析器 - 它是超出范围在这里): 直接生成代码使用Reflection.Emit的. 使用通用的编译界面抽象了Refl

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.212 (s). 10 q(s)