pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

是否有 Java 或 C# 的宏工具?

Are there macro facility for Java or C#?(是否有 Java 或 C# 的宏工具?)
本文介紹了是否有 Java 或 C# 的宏工具?的處理方法,對(duì)大家解決問(wèn)題具有一定的參考價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧!

問(wèn)題描述

限時(shí)送ChatGPT賬號(hào)..

宏很有用.

因此,我偶爾會(huì)感嘆 Java 和 C# 中沒(méi)有宏.宏允許我強(qiáng)制內(nèi)聯(lián),但允許我使用非宏代碼的代碼可管理性.

Therefore, I occasionally bemoan the absence of macros in Java and C#. Macros allow me to force in-line but allow me the code-manageability of non-macro code.

是否有任何基于 Java 或 C# 的項(xiàng)目/產(chǎn)品有效地允許宏或指定內(nèi)聯(lián)擴(kuò)展.

Is there any Java- or C#-based project/product somewhere out there that effectively allow macros or specifying in-line expansion.

我正在考慮類(lèi)似的事情

@macro public void hello(int x){ ... }

@macro public void hello(int x){ ... }

或者當(dāng)我調(diào)用一個(gè)方法時(shí),調(diào)用前的@inline 注釋會(huì)影響被調(diào)用方法的內(nèi)聯(lián).

or when I call a method, an @inline annotation preceding the call would effect the called-method to be in-lined.

或者,我是否需要知道我應(yīng)該相信編譯器會(huì)為我做出最好的決定,即在最好的分析情況下,它可能會(huì)內(nèi)聯(lián)調(diào)用.

or, should I need to know that I should just trust the compiler to make the best the decision for me that at the best of its analysis it might in-line a call.

我希望這個(gè)問(wèn)題不會(huì)導(dǎo)致?tīng)?zhēng)論宏的優(yōu)缺點(diǎn)/有用性.

I hope this question will not lead to debating the pro/cons/usefulness of macros.

推薦答案

宏不是標(biāo)準(zhǔn) Java 語(yǔ)言的一部分,我不知道主流 Java 工具、IDE 等是否支持任何宏預(yù)處理器.因此,如果您在 Java 代碼中使用宏,您應(yīng)該會(huì)體驗(yàn)到一些痛苦".例如,

Macros are not part of the standard Java language, and I'm not aware of any macro preprocessor being supported by mainstream Java tools, IDEs and so on. So if you use macros in your Java code you should expect to experience some "pain". For example,

  • 源代碼調(diào)試器不允許您相對(duì)于原始源代碼設(shè)置斷點(diǎn).
  • 如果您與宏共享 Java 代碼,許多 Java 開(kāi)發(fā)人員可能會(huì)對(duì)此嗤之以鼻,和/或抱怨必須安裝/使用額外的工具.

Java 的第三方宏預(yù)處理器有很多例子;例如Jatha, OpenJava, PrintMacroJ、JavaMacros 等等...(但你有沒(méi)有遇到過(guò)使用它們的項(xiàng)目?)

There are quite a few examples of third-party macro pre-processors for Java; e.g. Jatha, OpenJava, PrintMacroJ, JavaMacros, and so on ... (But have you ever come across a project that uses any of them?)

宏允許我強(qiáng)制內(nèi)聯(lián),但允許我使用非宏代碼的代碼可管理性.

Macros allow me to force in-line but allow me the code-manageability of non-macro code.

沒(méi)錯(cuò).但是 JIT 編譯器在確定 應(yīng)該 內(nèi)聯(lián)的內(nèi)容方面可能比您做得更好.它會(huì)(肯定地)知道這些塊有多大,并且它會(huì)有關(guān)于執(zhí)行頻率、分支預(yù)測(cè)等的運(yùn)行時(shí)統(tǒng)計(jì)信息,這些對(duì)你來(lái)說(shuō)是不可用的.

True. But the JIT compiler can probably do a better job than you can in determining what should be inlined. It will know (for sure) how big the chunks are, and it will have runtime stats on execution frequency, branch prediction, etc that are not available to you.

請(qǐng)注意,有一些 Hotspot JVM 調(diào)優(yōu)選項(xiàng)會(huì)影響優(yōu)化器的內(nèi)聯(lián)決策;請(qǐng)參閱 此頁(yè)面,并掃描inlin".例如,有一個(gè)似乎允許您增加內(nèi)聯(lián)方法體的大小上限.

Note that there are some Hotspot JVM tuning options that can influence the optimizer's decisions on inlining; see this page, and scan for "inlin". For instance, there is one that seems to allow you to increase the upper size threshold for an inlined method body.

這篇關(guān)于是否有 Java 或 C# 的宏工具?的文章就介紹到這了,希望我們推薦的答案對(duì)大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

【網(wǎng)站聲明】本站部分內(nèi)容來(lái)源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問(wèn)題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請(qǐng)聯(lián)系我們刪除處理,感謝您的支持!

相關(guān)文檔推薦

Parsing an ISO 8601 string local date-time as if in UTC(解析 ISO 8601 字符串本地日期時(shí)間,就像在 UTC 中一樣)
How to convert Gregorian string to Gregorian Calendar?(如何將公歷字符串轉(zhuǎn)換為公歷?)
Java: What/where are the maximum and minimum values of a GregorianCalendar?(Java:GregorianCalendar 的最大值和最小值是什么/在哪里?)
Calendar to Date conversion for dates before 15 Oct 1582. Gregorian to Julian calendar switch(1582 年 10 月 15 日之前日期的日歷到日期轉(zhuǎn)換.公歷到儒略歷切換)
java Calendar setFirstDayOfWeek not working(java日歷setFirstDayOfWeek不起作用)
Java: getting current Day of the Week value(Java:獲取當(dāng)前星期幾的值)
主站蜘蛛池模板: 偏心半球阀-电动偏心半球阀-调流调压阀-旋球阀-上欧阀门有限公司 | 档案密集柜_手动密集柜_智能密集柜_内蒙古档案密集柜-盛隆柜业内蒙古密集柜直销中心 | 石英陶瓷,石英坩埚,二氧化硅陶瓷-淄博百特高新材料有限公司 | 康明斯发电机,上柴柴油发电机,玉柴柴油发电机组_海南重康电力官网 | 爱佩恒温恒湿测试箱|高低温实验箱|高低温冲击试验箱|冷热冲击试验箱-您身边的模拟环境试验设备技术专家-合作热线:400-6727-800-广东爱佩试验设备有限公司 | 篷房[仓储-婚庆-展览-活动]生产厂家-江苏正德装配式帐篷有限公司 | 沈阳真空机_沈阳真空包装机_沈阳大米真空包装机-沈阳海鹞真空包装机械有限公司 | 全自动翻转振荡器-浸出式水平振荡器厂家-土壤干燥箱价格-常州普天仪器 | 定制/定做衬衫厂家/公司-衬衫订做/订制价格/费用-北京圣达信 | 河南mpp电力管_mpp电力管生产厂家_mpp电力电缆保护管价格 - 河南晨翀实业 | 次氯酸钠厂家,涉水级次氯酸钠,三氯化铁生产厂家-淄博吉灿化工 | 长沙中央空调维修,中央空调清洗维保,空气能热水工程,价格,公司就找维小保-湖南维小保环保科技有限公司 | 干粉砂浆设备_干混砂浆生产线_腻子粉加工设备_石膏抹灰砂浆生产成套设备厂家_干粉混合设备_砂子烘干机--郑州铭将机械设备有限公司 | 天长市晶耀仪表有限公司 | 冷柜风机-冰柜电机-罩极电机-外转子风机-EC直流电机厂家-杭州金久电器有限公司 | 齿轮减速马达一体式_蜗轮蜗杆减速机配电机-德国BOSERL齿轮减速电动机生产厂家 | 气密性检测仪_气密性检测设备_防水测试仪_密封测试仪-岳信仪器 | 聚氨酯催化剂K15,延迟催化剂SA-1,叔胺延迟催化剂,DBU,二甲基哌嗪,催化剂TMR-2,-聚氨酯催化剂生产厂家 | 定量包装机,颗粒定量包装机,粉剂定量包装机,背封颗粒包装机,定量灌装机-上海铸衡电子科技有限公司 | 上海地磅秤|电子地上衡|防爆地磅_上海地磅秤厂家–越衡称重 | 玻璃钢型材-玻璃钢风管-玻璃钢管道,生产厂家-[江苏欧升玻璃钢制造有限公司] | 雄松华章(广州华章MBA)官网-专注MBA/MPA/MPAcc/MEM辅导培训 | 电加热导热油炉-空气加热器-导热油加热器-翅片电加热管-科安达机械 | 广东西屋电气有限公司-广东西屋电气有限公司 | 12cr1mov无缝钢管切割-15crmog无缝钢管切割-40cr无缝钢管切割-42crmo无缝钢管切割-Q345B无缝钢管切割-45#无缝钢管切割 - 聊城宽达钢管有限公司 | 灌装封尾机_胶水灌装机_软管灌装封尾机_无锡和博自动化机械制造有限公司 | 银川美容培训-美睫美甲培训-彩妆纹绣培训-新娘化妆-学化妆-宁夏倍莱妮职业技能培训学校有限公司 临时厕所租赁_玻璃钢厕所租赁_蹲式|坐式厕所出租-北京慧海通 | 六维力传感器_六分量力传感器_模腔压力传感器-南京数智微传感科技有限公司 | 铁素体测量仪/检测仪/铁素体含量测试仪-苏州圣光仪器有限公司 | 陶瓷砂磨机,盘式砂磨机,棒销式砂磨机-无锡市少宏粉体科技有限公司 | Win10系统下载_32位/64位系统/专业版/纯净版下载 | 强效碱性清洗剂-实验室中性清洗剂-食品级高纯氮气发生器-上海润榕科学器材有限公司 | 沈阳庭院景观设计_私家花园_别墅庭院设计_阳台楼顶花园设计施工公司-【沈阳现代时园艺景观工程有限公司】 | 学生作文网_中小学生作文大全与写作指导 | 外观设计_设备外观设计_外观设计公司_产品外观设计_机械设备外观设计_东莞工业设计公司-意品深蓝 | CPSE安博会| 品牌设计_VI设计_电影海报设计_包装设计_LOGO设计-Bacross新越品牌顾问 | 彩信群发_群发彩信软件_视频短信营销平台-达信通 | 车辆定位管理系统_汽车GPS系统_车载北斗系统 - 朗致物联 | 818手游网_提供当下热门APP手游_最新手机游戏下载 | 搜活动房网—活动房_集装箱活动房_集成房屋_活动房屋 |