C++14草案深度解析:源码与Windows编程

版权申诉
0 下载量 88 浏览量 更新于2024-10-30 收藏 4.76MB ZIP 举报
资源摘要信息: "N3797 (Draft for C++14) – Windows编程与C++标准源码研究" N3797 是指 ISO/IEC 14882:2014 标准的草案文档,该文档是C++14版本的标准草案。C++14是C++语言的一次更新,它在C++11的基础上做了进一步的改进和修正。此文档是编程语言语义学的学习资料,对于Windows平台的程序员而言,这是一份重要的参考资料,因为它涉及到了在Windows环境下开发软件时所依据的国际标准。 从标题中我们可以提取到以下知识点: 1. C++14标准:C++14是C++编程语言的第四个官方标准,它在2014年正式发布。该标准对C++11标准进行了补充和完善,提供了一系列新的特性,例如lambda表达式、变量模板、整数类型的用户自定义字面量、泛型lambda表达式等。 2. Windows编程:Windows编程指的是在Microsoft Windows操作系统平台上使用各种编程语言和技术进行软件开发的过程。C++作为一种性能强大、功能丰富的编程语言,常被用于开发Windows平台上的应用程序和系统级软件。 3. C++标准:C++标准是指由ISO(国际标准化组织)和IEC(国际电工委员会)共同发布的C++语言规范。它定义了C++语言的核心语义和语法,以及标准库的接口。C++标准确保了不同平台、编译器和开发者的代码能够保持一致性和可移植性。 在描述中提到的“编程语言语义学学习资料”表明了N3797草案文档不仅仅是一份标准说明,它还包含了对语言特性的解释和使用示例,这对于深入理解C++14的新特性、改进点以及如何在实际开发中应用这些特性至关重要。 结合标签“Windows编程 C++standard”,我们可以得出该文档是针对希望在Windows环境下遵循C++14标准开发程序的开发者。这意味着开发者需要熟悉Windows平台的开发环境,比如Microsoft Visual Studio,并且需要掌握C++14标准提供的语言特性和库。 从文件名称列表中的“N3797 (Draft for C++14).pdf”可以推测,这是一个关于C++14标准草案的PDF格式文件。PDF文件通常用于发布标准、学术论文和其他形式的正式文档,因此这份文件很可能包含了详细的规范说明、技术细节、示例代码、语言变化的讨论以及可能的实施指南等。 总结起来,这份资源对于任何希望在Windows环境下进行C++编程的开发者来说都是不可或缺的。它不仅提供了语言规范,而且帮助开发者更好地理解和实现C++14标准,从而编写出更高效、更规范的代码。

优化这段代码:if (icbcDtlRsp.getBillSta().equals("CS01") && icbcDtlRsp.getRangeStage().equals("TF0101")) { //CS01已出票 & TFO101待收票---010004出票已登记 ecdsDrftInf.setDrftSndStat(getValueOrDefault(ECDSConstants.DRAFT_STATUS_CPYDJ, ecdsDrftInf.getDrftSndStat())); // 票据发送人状态 ecdsDrftInf.setDrftRcvStat(getValueOrDefault(ECDSConstants.DRAFT_STATUS_CPYDJ, ecdsDrftInf.getDrftRcvStat())); // 票据接收人状态 ecdsDrftInf.setDrftCurrStat(getValueOrDefault(ECDSConstants.DRAFT_STATUS_CPYDJ, ecdsDrftInf.getDrftCurrStat())); // 人行当前状态 } else if (ecdsDrftInf.getDrftOrgStat().equals(ECDSConstants.DRAFT_STATUS_CPYDJ) && icbcDtlRsp.getBillSta().equals("CS01") && icbcDtlRsp.getRangeStage().equals("TF0302")) { //CS01已出票 & TF0302已锁定--- 020001承兑待签收 ecdsDrftInf.setDrftSndStat(getValueOrDefault(ECDSConstants.DRAFT_STATUS_TSCDDQS, ecdsDrftInf.getDrftSndStat())); // 票据发送人状态 ecdsDrftInf.setDrftRcvStat(getValueOrDefault(ECDSConstants.DRAFT_STATUS_TSCDDQS, ecdsDrftInf.getDrftRcvStat())); // 票据接收人状态 ecdsDrftInf.setDrftCurrStat(getValueOrDefault(ECDSConstants.DRAFT_STATUS_TSCDDQS, ecdsDrftInf.getDrftCurrStat())); // 人行当前状态 } else if (ecdsDrftInf.getDrftOrgStat().equals(ECDSConstants.DRAFT_STATUS_CPYDJ) && icbcDtlRsp.getBillSta().equals("CS02") && icbcDtlRsp.getRangeStage().equals("TFO101")) { //CS02已承兑 & TFO101待收票---020006承兑已签收 ecdsDrftInf.setDrftSndStat(getValueOrDefault(ECDSConstants.DRAFT_STATUS_TSCDYQS, ecdsDrftInf.getDrftSndStat())); // 票据发送人状态 ecdsDrftInf.setDrftRcvStat(getValueOrDefault(ECDSConstants.DRAFT_STATUS_TSCDYQS, ecdsDrftInf.getDrftRcvStat())); // 票据接收人状态 ecdsDrftInf.setDrftCurrStat(getValueOrDefault(ECDSConstants.DRAFT_STATUS_TSCDYQS, ecdsDrftInf.getDrftCurrStat())); // 人行当前状态 }

2023-06-01 上传

SELECT DISTINCT c.ID AS id, c.NAME AS contName, c.CONTRACT_NO AS contractNo, c.INSTANCE_ID AS instanceId, c.UNDERTAKE_DEPT_ID AS remindDeptId, c.UNDERTAKE_DEPT_NAME AS sendDeptName, c.CREATE_USER_ID, c.CREATE_USER_NAME AS contractOpteraterName, c.PLAN_STATE AS planState, c.PLAN_STATE_NAME AS planStateName, aw.INSTANCE_ID AS inId, aw.CREATE_TIME AS sendTime FROM ( SELECT c.* FROM ( SELECT c.* FROM ( SELECT c.ORIGINAL_CONTRACT_ID, MAX(CREATE_TIME) CREATE_TIME FROM CONTRACT_DRAFT.C_CONTRACT_INFO c WHERE c.ORIGINAL_CONTRACT_ID IS NOT NULL AND c.ORIGINAL_CONTRACT_ID != '' GROUP BY c.ORIGINAL_CONTRACT_ID ) t LEFT JOIN CONTRACT_DRAFT.C_CONTRACT_INFO c ON t.ORIGINAL_CONTRACT_ID = c.ORIGINAL_CONTRACT_ID AND t.CREATE_TIME = c.CREATE_TIME UNION ALL SELECT c.* FROM CONTRACT_DRAFT.C_CONTRACT_INFO c WHERE ( c.ORIGINAL_CONTRACT_ID IS NULL OR c.ORIGINAL_CONTRACT_ID = '' ) AND c.ID NOT IN ( SELECT c.ORIGINAL_CONTRACT_ID FROM CONTRACT_DRAFT.C_CONTRACT_INFO c WHERE c.ORIGINAL_CONTRACT_ID IS NOT NULL AND c.ORIGINAL_CONTRACT_ID != '')) c WHERE c.deleted_flag = 0 AND c.BELONG = 1 AND sysdate > c.end_date AND c.plan_state IN (4100, 4110, 4120, 4200, 4210, 4220, 5100, 5110, 5120) ) c INNER JOIN (SELECT INSTANCE_ID,create_time,state FROM CONTRACT_DRAFT.C_ACTIVITY_WORKITEMS WHERE state = 'Waiting') aw ON c.INSTANCE_ID = aw.INSTANCE_ID LEFT JOIN (SELECT deleted_flag,CONT_ID FROM CONTRACT_DRAFT.C_GET_PAY_PLAN WHERE deleted_flag = 0 ) g ON c.ID = g.CONT_ID LEFT JOIN CONTRACT_DRAFT.C_OUR_ENTITY_INFO oe ON c.OUR_ENTITY_ID = oe.ID AND oe.DELETED_FLAG = 0 ORDER BY aw.CREATE_TIME DESC 优化

2023-07-08 上传