vc++中的预处理器定义是干什么用的

vc++中的预处理器定义是干什么用的,第1张

预处理(pre-treatment),是指在进行最后加工完善以前进行的准备过程,具体应用在不同的行业或领域,会有不同的解释。

在一些程序设计语言中,预处理是preprocessing的翻译。

含义

程序设计领域中,预处理一般是指在程序源代码被翻译为目标代码的过程中,生成二进制代码之前的过程。典型地,由预处理器(preprocessor) 对程序源代码文本进行处理,得到的结果再由编译器核心进一步编译。这个过程并不对程序的源代码进行解析,但它把源代码分割或处理成为特定的单位——(用C/C++的术语来说是)预处理记号(preprocessing token)用来支持语言特性(如C/C++的宏调用)。

C/C++预处理

最常见的预处理是C语言和C++语言。ISO C和ISO C++都规定程序由源代码被翻译分为若干有序的阶段(phase) [1] [2] ,通常前几个阶段由预处理器实现。预处理中会展开以#起始的行,试图解释为预处理指令(preprocessing directive) ,其中ISO C/C++要求支持的包括#if/#ifdef/#ifndef/#else/#elif/#endif(条件编译)、#define(宏定义)、#include(源文件包含)、#line(行控制)、#error(错误指令)、#pragma(和实现相关的杂注)以及单独的#(空指令)[1] [2] 。预处理指令一般被用来使源代码在不同的执行环境中被方便的修改或者编译。[3]

预处理器在UNIX传统中通常缩写为PP,在自动构建脚本中C预处理器被缩写为CPP的宏指代。为了不造成歧义,C++(cee-plus-plus) 经常并不是缩写为CPP,而改成CXX。

注意预处理常被错误地当作预编译(precompiling) ,事实上这是两个不同的概念。预处理尽管并不是ISO C/C++要求的单独阶段,但“预处理”这个术语正式地出现并参与构成其它术语,如C的预处理翻译单元(preprocessing translation unit)[1] 以及C/C++词法规则中预处理记号(prerprocessing-token) 这个语法分类[1] [2] 。预编译是一些编译器支持的特性,不是C/C++语言的特性或实现必须要求遵循的规则涉及到的内容,没有在ISO C/C++全文中出现[1] [2] 。

织物的预处理编辑

含义或目的

纺织物的预处理,是纺织物烧毛、退浆、精练、漂白、丝光和热定形等工艺过程的总称。预处理的目的是去除纱线或织物上的天然杂质,以及纺织过程中所附加的浆料、助剂和沾污物。经过预处理的纺织品具有较好的润湿性、白度、光泽和尺寸稳定性。天然纤维含杂较多,其纺织物的预处理要求也较高,天然纤维与化学纤维混纺织物的预处理工艺,应以适合天然纤维为主,同时照顾化学纤维的要求。

预处理过程

烧毛是烧去纱线或织物表面的茸毛,使织物表面光洁,增进染色或印花后的色泽鲜艳度,在服用过程中不易沾尘。化学纤维织物烧毛后,还可减轻因茸毛摩擦而引起的起球现象。

退浆、精练、漂白过程都是去除织物上的各种杂质,三者相辅相成,各有侧重。退浆以去除浆料为主,同时也可洗除部分水溶性天然杂质;精练是以去除纤维伴生的天然杂质为主,并可去除织物上残留的浆料等物质漂白是以去除色素为主,并进一步去除精练后的残留杂质。棉、麻纤维织物大多要经过退浆,常用的有热水、碱液、淀粉酶、氧化剂等退浆法。精练对于棉纺织物非常重要,主要是通过烧碱液的作用去除果胶质、棉脂、棉蜡等天然杂质,并使棉籽壳残屑体解。棉纤维的漂白常用次氯酸钠或过氧化氢。苎麻纺织物的精练、漂白工艺和棉相似。亚麻纤维的吸水性较好,精练要求较棉为低,可用纯碱处理。亚麻纺织物的漂白常用较廉价的次氯酸钠酸性溶液处理,再用碱液洗除反应产物。漂白和碱处理可交替重复进行。羊毛精练通常是在原毛状态进行的,又称洗毛,主要是去除羊汗和羊脂。可用含碳酸钠和肥皂或洗涤剂的练液在50℃左右使羊脂乳化而洗除。羊毛纤维一般不经漂白过程,需要时用还原剂如二氧化硫、亚硫酸氢钠或连二亚硫酸钠进行漂白,但漂白效果不持久,在空气中会逐渐氧化而泛黄;用过氧化氢漂白剂效果较好。蚕丝织物的预处理主要是精练,目的是去除丝胶。脱胶用剂主要是肥皂液,可酌加碳酸钠。也可先用蛋白酶处理,再经肥皂液洗涤。丝纤维的色素等杂质主要集中在丝胶中,脱胶后一般不再漂白。需要漂白时通常采用过氧化氢为漂白剂。合成纤维含杂极少,织造时大多选用水溶性浆料,且用量较少,退浆常结合精练进行,处理的条件可较温和。锦纶织物用非离子型洗涤剂处理;漂白用剂以亚氯酸钠最宜,过氧化氢或次氯酸钠均易使纤维受损。涤纶虽然遇碱会水解,仍可用淡碱液作精练处理,但应严格控制温度和时间,漂白用剂以亚氯酸钠为最好,有时退浆、精练、漂白可同时完成。

丝光主要用于加工棉、麻纺织物。丝光过程的特点是纱线或织物浸渍浓烧碱液,使纤维发生溶胀,再在张力状态下洗去碱液,从而获得耐久性的光泽,有效地提高染料的上染率并有定形作用。

热定形主要用于受热后易收缩变形的锦纶或涤纶等合成纤维及其混纺物的加工。这些纺织物在染色或印花之前,一般都先在有张力的状态下用比后续工序为高的温度进行处理,以防止织物收缩变形。

工业水处理中预处理编辑

定义和组成

沼气在沼气池中发酵产生后

气体预处理

气体预处理

,里面会有大量的腐蚀性气体和对环境造成严重污染的气体(烷类气体、一氧化碳、二氧化碳、硫化气体等),对于发电机组和环境都是不能接受的,宾士预处理系统主要是为了保证燃气发电机组能够正常稳定的运行而设计生产的,沼气经过预处理系统后可以大大降低硫化物、水分及颗粒度。

在工业用水处理中,预处理工序的任务是将工业用水的水源——地表水、地下水或城市自来水处理到符合后续水处理装置所允许的进水水质指标,从而保证水处理系统长期安全、稳定地运行,为工业生产提供优质用水。

预处理的对象主要是水中的悬浮物、胶体、微生物、有机物、游离性余氯和重金属等。这些杂质对于电渗析、离子交换、反渗透、钠滤等水处理装置会产生不利的影响。 [4]

(一)悬浮物

在离子交换水处理中,进水的悬浮物会附着于交换剂颗粒表面,降低交换容量。

在电渗析水处理中,进水的悬浮物会黏附在膜表面上,成为离子迁移的障碍,增加膜电阻。

在钠滤、反渗透中,进水的悬浮物会堵塞膜的微孔,使透水率下降。

(二)有机物

在离子交换水处理中,有机物会污染阴离子交换树脂,使其交换容量下降,再生剂耗量增大,树脂使用寿命缩短。

在电渗析水处理中,水中带极性有机物被膜吸附后,会改变膜的极性,并使膜的选择透过性降低,膜电阻增加。

在反渗透、钠滤水处理中,有机物、胶体、悬浮物容易堵塞反渗透、钠滤膜的微孔,使透水率很快下降。

(三)微生物

水中的细菌转移到电渗析膜,在膜面上繁殖,会使膜电阻增加。

细菌、微生物对醋酸纤维素反渗透、纳滤膜有侵蚀作用。细菌繁殖会污染膜。

(四)游离性余氯

游离性余氯会使阳离子交换树脂或离子交换膜活性基团氧化分解,引起树脂或膜结构破坏。还会使反渗透聚酰胺膜性能恶化。

(五)铁、锰离子

铁、锰离子易被离子交换树脂吸附,且不易被再生剂取代,降低交换容量。也会使电渗析膜污染、中毒。铁、锰金属氧化物,其含量高时,在反渗透、纳滤膜表面易形成氢氧化物胶体,产生沉淀作用。

由于上述种种不利的影响,导致工业用水处理系统产水量减少,出水的水质下降,工作周期缩短,消耗指标上升,制水成本提高,树脂和膜的使用寿命缩短,并在 *** 作管理上增加麻烦。

随着工农业的不断发展,城市人口的日益密集,有些污水未经处理排入江河,使水中有害物质日益增多。这就对工业用水的预处理提出了更高的要求。

实验出现的报错(1):无法打开 源文件“stdafx.h”,即头文件:#include “stdafx.h”报错,查找了很多资料,最终通过项目的属性:预编译头文件得以解决。

实验出现的报错(2):error C4996: 'getch': The POSIX name for this item is deprecated. Instead, use the ISO C++ conf 即程序中出现的函数:getch()报错,网上的解决方法有以下所示的两种,但是第一种方法我在VS2019中没有用,不清楚原因,最后是使用第二种方法解决的。

1. 添加预处理

项目-->属性-->配置属性-->C/C++-->预处理器-->预处理器定义-->编辑中添加

_CRT_SECURE_NO_DEPRECATE

_CRT_NONSTDC_NO_DEPRECATE

2. 更换函数

将 getch() 函数更换为 _getch() 函数即可。

方法1: 选择项目->属性->预处理器->预处理定义, 增加:HYCOMMONWINAPI_EXPORTS

方法2:

就是在

#ifdef HYCOMMONWINAPI_EXPORTS

#define HYCOMMONWINAPI_API __declspec(dllexport)

#else

#define HYCOMMONWINAPI_API __declspec(dllimport)

#endif

前面增加 #define HYCOMMONWINAPI_EXPORTS

其实这两种方法都是增加定义

方法3:在你的dll cpp文件中把

#define HYCOMMONWINAPI_EXPORTS

加在#include <接口文件.h>

的前面

方法4:右击dll工程 -- 属性,打开属性页,展开:配置属性 -- C++ --预处理器,在预处理器定义的最后面填入:_AFXEXT,再次编译则搞掂。

以上方法逐一试下,不知道能不能帮到你。另外这种问题最好去CSDN社区去问比较好,百度上牛X的人比较少,我就经常去CSDN。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11953091.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存