




已阅读5页,还剩53页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2019/9/9,1,类与对象基本概念,问题:现实生活中可以把各种事物分成不同的类,如不同的家庭中每一个家庭可以看作一个“类”,家庭中的的不同的成员就是类中的成员。成员中有些是公开的,如有多少家具,有些对家庭外的成员只能是亲戚才知道,如谁是谁的表兄妹,但有些是只能家庭中的成员才能清楚,如有多少存款 。,我们把具有某一个特定结构的数据称为类,其中的成员有公开的(public),即可以让其他类访问,另外有一种保护的(protected),只可以被类中和他的派生类(即亲戚)访问,还有私有的(private)即不允许让其他类访问。,如不同的人就是一个类。,2019/9/9,2,类的定义格式,class 类类型名 public: 公开成员声明 protected: 保护成员声明 private: 私有成员声明 ;,2019/9/9,3,类的定义格式,如:定义类 Person 的文件 person.hpp class Person private: char name10; int age; char sex; public: void print( ); ;,私有成员声明,公有成员声明,2019/9/9,4,类的实现 类中如果有成员是函数,这函数可有如下方法实现类成员函数定义格式:,类型类名:成员函数名(参数表) 函数体 ,2019/9/9,5,如前面对Person 类的成员函数print( ) 可以定义如下:,#include “person.hpp” #include void Person:print( ) cout“name:”name; cout“,age:”age; cout“,sex:”sexendl; ,2019/9/9,6,说明:1)成员函数也可以定义为内嵌,即与类定义同时定义在里面; 2)不加声明的成员放在第一段认为是私有的,即private可以缺省。前面两步“定义类”和“定义成员函数”可以合成一步如下:,#include class Person char name10, sex; int age; public: void print( ) cout“name:”name; cout“,age:”age; cout“,sex:”endl; ;,2019/9/9,7,另:可以用inline使成员函数成为内嵌成员函数。,inline void Person:print( ) cout“name:”; cout“,age:”age; cout“,sex:”sexendl; ,2019/9/9,8,对象的创建与撤消,对象声明 如果定义了类Person ,可以用语句创建对象 Person zh , c ; 这里,zh与c被声明为Person类型的对象。 这样,表示zh 的名字, zh.age表示zh的年龄, zh.sex表示zh的性别; 同样,表示c的名字, 格式: 对象. 成员,可以这样理解,类Person表示某人的结构,对象zh,c就是具体一个的人的情况。,2019/9/9,9,6.1.1 定义类和对象,/ 一个类的例子 #include class Tdate public: void Set(int m, int d, int y ) month = m ; day = d ; year = y ; int IsLeapYear() return ( year%4 = 0 ,class Tdate public: void Set(int m, int d, int y ) month = m ; day = d ; year = y ; int IsLeapYear() return ( year%4 = 0 ,2019/9/9,10,6.1.1 定义类和对象,/ 一个类的例子 #include class Tdate public: void Set(int m, int d, int y ) month = m ; day = d ; year = y ; int IsLeapYear() return ( year%4 = 0 ,class Tdate public: void Set(int m, int d, int y ) month = m ; day = d ; year = y ; int IsLeapYear() return ( year%4 = 0 ,关键字 定义一个类,标识符 类名,class ,struct,union 都可以定义一个类: class 缺省说明时,其成员被认为 是私有的 struct 若不特别指出,其所有成员 都是公有的 union 其所有成员都是公有的,且 不能更改,2019/9/9,11,6.1.1 定义类和对象,/ 一个类的例子 #include class Tdate public: void Set(int m, int d, int y ) month = m ; day = d ; year = y ; int IsLeapYear() return ( year%4 = 0 ,a,Tdate 类型的一个 对象(实例),2019/9/9,12,6.1.1 定义类和对象,/ 一个类的例子 #include class Tdate public: void Set(int m, int d, int y ) month = m ; day = d ; year = y ; int IsLeapYear() return ( year%4 = 0 ,类由成员构成: 数据成员描述对象的属性 成员函数描述对象的方法,2019/9/9,13,6.1.1 定义类和对象,/ 一个类的例子 #include class Tdate public: void Set(int m, int d, int y ) month = m ; day = d ; year = y ; int IsLeapYear() return ( year%4 = 0 ,int month; int day; int year;,数据成员,2019/9/9,14,6.1.1 定义类和对象,/ 一个类的例子 #include class Tdate public: void Set(int m, int d, int y ) month = m ; day = d ; year = y ; int IsLeapYear() return ( year%4 = 0 ,void Set(int m, int d, int y ) month = m ; day = d ; year = y ; int IsLeapYear() return ( year%4 = 0 ,类中定义成员函数 内联函数处理,2019/9/9,15,6.1.1 定义类和对象,/ 一个类的例子 #include class Tdate public: void Set(int m, int d, int y ) month = m ; day = d ; year = y ; int IsLeapYear() return ( year%4 = 0 ,void Set(int m, int d, int y ) ; int IsLeapYear() ; void Print() ;,在类外定义 成员函数,void Tdate : Set(int m, int d, int y ) month = m ; day = d ; year = y ; int Tdate : IsLeapYear() return ( year%4 = 0 ,2019/9/9,16,6.1.1 定义类和对象,/ 一个类的例子 #include class Tdate public: void Set(int m, int d, int y ) month = m ; day = d ; year = y ; int IsLeapYear() return ( year%4 = 0 ,成员的性质由关键字public、protected、private 决定 public 公有 公有段的成员是提供给外部的接口 protected 保护 保护段成员在该类和它的派生类中可见 private 私有 私有段成员仅在类中可见 各段中既可以包含数据成员,也可以包含成员函数,2019/9/9,17,6.1.1 定义类和对象,/ 一个类的例子 #include class Tdate public: void Set(int m, int d, int y ) month = m ; day = d ; year = y ; int IsLeapYear() return ( year%4 = 0 ,类说明的一般形式为: class 类名 public: 公有段数据成员和成员函数 ; protected: 保护段数据成员和成员函数 ; private: 私有数据成员和成员函数 ; ;,2019/9/9,18,6.1.1 定义类和对象,类说明的一般形式为: class 类名 public: 公有段数据成员和成员函数 ; protected: 保护段数据成员和成员函数 ; private: 私有数据成员和成员函数 ; ;,注: 1. 允许已定义类名出现在类的说明中,例: class link link * next ; ;,/ 声明一个指向link类类型的指针,2019/9/9,19,6.1.1 定义类和对象,类说明的一般形式为: class 类名 public: 公有段数据成员和成员函数 ; protected: 保护段数据成员和成员函数 ; private: 私有数据成员和成员函数 ; ;,注: 1. 允许已定义类名出现在类的说明中,例: class X ; class Y X dataMember ; ;,/ 声明一个类类型数据成员,2019/9/9,20,6.1.1 定义类和对象,类说明的一般形式为: class 类名 public: 公有段数据成员和成员函数 ; protected: 保护段数据成员和成员函数 ; private: 私有数据成员和成员函数 ; ;,注: 1. 允许已定义类名出现在类的说明中,例: class X X dataMember ; ;,/ 错误,错误 无穷递归结构,2019/9/9,21,6.1.1 定义类和对象,类说明的一般形式为: class 类名 public: 公有段数据成员和成员函数 ; protected: 保护段数据成员和成员函数 ; private: 私有数据成员和成员函数 ; ;,注: 1. 允许已定义类名出现在类的说明中,2. 类可以无名,用于直接声明对象,例: class mydate ;,/ 直接声明一个对象,2019/9/9,22,6.1.1 定义类和对象,类说明的一般形式为: class 类名 public: 公有段数据成员和成员函数 ; protected: 保护段数据成员和成员函数 ; private: 私有数据成员和成员函数 ; ;,注: 1. 允许已定义类名出现在类的说明中,2. 类可以无名,用于直接声明对象,例: #include class empty ; void main() empty e1 , e2 ; cout“ ,3. 类是一个程序包。可以只有数据成员或只有成员函数,或者为空。 空类的对象大小不为零,空类对象具有地址,一个空类,2019/9/9,23,6.1.1 定义类和对象,类说明的一般形式为: class 类名 public: 公有段数据成员和成员函数 ; protected: 保护段数据成员和成员函数 ; private: 私有数据成员和成员函数 ; ;,注: 1. 允许已定义类名出现在类的说明中,2. 类可以无名,用于直接声明对象,例: #include class empty ; void main() empty e1 , e2 ; cout“ ,3. 类是一个程序包。可以只有数据成员或只有成员函数,或者为空。 空类的对象大小不为零,空类对象具有地址,两个空类对象,2019/9/9,24,6.1.1 定义类和对象,类说明的一般形式为: class 类名 public: 公有段数据成员和成员函数 ; protected: 保护段数据成员和成员函数 ; private: 私有数据成员和成员函数 ; ;,注: 1. 允许已定义类名出现在类的说明中,例: #include class empty ; void main() empty e1 , e2 ; cout“ ,2. 类可以无名,用于直接声明对象,3. 类是一个程序包。可以只有数据成员或只有成员函数,或者为空。 空类的对象大小不为零,空类对象具有地址,2019/9/9,25,公有成员是提供给外部的接口 类外用 “ . ” 和 “ - ” 运算符访问对象成员,6.1.2 访问对象成员,/访问对象的公有成员 #include class Tclass public: int x,y ; void print() cout x “,” y ; ; ; void main() Tclass test ; test.x = 100 ; test.y = 200 ; test.print() ; ,2019/9/9,26,公有成员是提供给外部的接口 类外用 “ . ” 和 “ - ” 运算符访问对象成员,6.1.2 访问对象成员,/访问对象的公有成员 #include class Tclass public: int x,y ; void print() cout x “,” y ; ; ; void main() Tclass test ; test.x = 100 ; test.y = 200 ; test.print() ; ,访问 公有数据成员,2019/9/9,27,公有成员是提供给外部的接口 类外用 “ . ” 和 “ - ” 运算符访问对象成员,6.1.2 访问对象成员,/访问对象的公有成员 #include class Tclass public: int x,y ; void print() cout x “,” y ; ; ; void main() Tclass test ; test.x = 100 ; test.y = 200 ; test.print() ; ,调用 公有成员函数,2019/9/9,28,公有成员是提供给外部的接口 类外用 “ . ” 和 “ - ” 运算符访问对象成员,6.1.2 访问对象成员,/ 用指针访问对象成员 #include class Tclass public : int x, y ; void print() cout x + ptf-y ) ; void main() Tclass test, * pt = new(Tclass) ; pt-x = 100 ; pt-y = 200 ; pt-print() ; test.x = 150 ; test.y = 450 ; test.print() ; cout “x+y=“ add( ,2019/9/9,29,公有成员是提供给外部的接口 类外用 “ . ” 和 “ - ” 运算符访问对象成员,6.1.2 访问对象成员,/ 用指针访问对象成员 #include class Tclass public : int x, y ; void print() cout x + ptf-y ) ; void main() Tclass test, * pt = new(Tclass) ; pt-x = 100 ; pt-y = 200 ; pt-print() ; test.x = 150 ; test.y = 450 ; test.print() ; cout “x+y=“ add( ,建立 动态对象,2019/9/9,30,公有成员是提供给外部的接口 类外用 “ . ” 和 “ - ” 运算符访问对象成员,6.1.2 访问对象成员,/ 用指针访问对象成员 #include class Tclass public : int x, y ; void print() cout x + ptf-y ) ; void main() Tclass test, * pt = new(Tclass) ; pt-x = 100 ; pt-y = 200 ; pt-print() ; test.x = 150 ; test.y = 450 ; test.print() ; cout “x+y=“ add( ,用指针 访问对象成员,2019/9/9,31,公有成员是提供给外部的接口 类外用 “ . ” 和 “ - ” 运算符访问对象成员,6.1.2 访问对象成员,/ 用指针访问对象成员 #include class Tclass public : int x, y ; void print() cout x + ptf-y ) ; void main() Tclass test, * pt = new(Tclass) ; pt-x = 100 ; pt-y = 200 ; pt-print() ; test.x = 150 ; test.y = 450 ; test.print() ; cout “x+y=“ add( ,具有类指针参数 的函数,2019/9/9,32,公有成员是提供给外部的接口 类外用 “ . ” 和 “ - ” 运算符访问对象成员,6.1.2 访问对象成员,/ 用指针访问对象成员 #include class Tclass public : int x, y ; void print() cout x + ptf-y ) ; void main() Tclass test, * pt = new(Tclass) ; pt-x = 100 ; pt-y = 200 ; pt-print() ; test.x = 150 ; test.y = 450 ; test.print() ; cout “x+y=“ add( ,向函数 传递对象地址,2019/9/9,33,6.1.3 this 指针,概念:this 指针是隐含在对象成员函数内的一种指针。当一个对象被创建后,它的每一个成员函数都含有一个系统生成的隐含的指针_ this ,用以保存这个对象的地址。因此 this 也称为“指向本对象的指针”。 它用来存取类中当前成员变量的格式为 this - 成员变量,2019/9/9,34,6.1.3 this指针,#include class Simple int x, y ; public : void setXY ( int a, int b) x = a ; y = b ; void printXY() cout x “,“ y endl ; ; ; void main() Simple obj1, obj2, obj3 ; obj1 . setXY ( 10, 15 ) ; obj1 . printXY () ; obj2 . setXY ( 20, 25 ) ; obj2 . printXY () ; obj3 . setXY ( 30, 35 ) ; obj3 . printXY () ; ,2019/9/9,35,6.1.3 this指针,#include class Simple int x, y ; public : void setXY ( int a, int b) x = a ; y = b ; void printXY() cout x “,“ y endl ; ; ; void main() Simple obj1, obj2, obj3 ; obj1 . setXY ( 10, 15 ) ; obj1 . printXY () ; obj2 . setXY ( 20, 25 ) ; obj2 . printXY () ; obj3 . setXY ( 30, 35 ) ; obj3 . printXY () ; ,2019/9/9,36,6.1.3 this指针,#include class Simple int x, y ; public : void setXY ( int a, int b) x = a ; y = b ; void printXY() cout x “,“ y endl ; ; ; void main() Simple obj1, obj2, obj3 ; obj1 . setXY ( 10, 15 ) ; obj1 . printXY () ; obj2 . setXY ( 20, 25 ) ; obj2 . printXY () ; obj3 . setXY ( 30, 35 ) ; obj3 . printXY () ; ,2019/9/9,37,6.1.3 this指针,#include class Simple int x, y ; public : void setXY ( int a, int b) x = a ; y = b ; void printXY() cout x “,“ y endl ; ; ; void main() Simple obj1, obj2, obj3 ; obj1 . setXY ( 10, 15 ) ; obj1 . printXY () ; obj2 . setXY ( 20, 25 ) ; obj2 . printXY () ; obj3 . setXY ( 30, 35 ) ; obj3 . printXY () ; ,向哪个对象 的数据成员赋值?,2019/9/9,38,6.1.3 this指针,#include class Simple int x, y ; public : void setXY ( int a, int b) x = a ; y = b ; void printXY() cout x “,“ y endl ; ; ; void main() Simple obj1, obj2, obj3 ; obj1 . setXY ( 10, 15 ) ; obj1 . printXY () ; obj2 . setXY ( 20, 25 ) ; obj2 . printXY () ; obj3 . setXY ( 30, 35 ) ; obj3 . printXY () ; ,void setXY ( int a, int b, Simple * const this ) this-x = a ; this-y = b ; ,obj1 . setXY ( 10, 15, ,成员函数隐含定义 this 指针 接受调用对象的地址,2019/9/9,39,6.1.3 this指针,#include class Simple int x, y ; public : void setXY ( int a, int b) x = a ; y = b ; void printXY() cout x “,“ y endl ; ; ; void main() Simple obj1, obj2, obj3 ; obj1 . setXY ( 10, 15 ) ; obj1 . printXY () ; obj2 . setXY ( 20, 25 ) ; obj2 . printXY () ; obj3 . setXY ( 30, 35 ) ; obj3 . printXY () ; ,obj1 . setXY ( 10, 15, ,this 指针不能显式声明,void setXY ( int a, int b, Simple * const this ) this-x = a ; this-y = b ; ,2019/9/9,40,6.1.3 this指针,#include class Simple int x, y ; public : void setXY ( int a, int b) x = a ; y = b ; void printXY() cout x “,“ y endl ; ; ; void main() Simple obj1, obj2, obj3 ; obj1 . setXY ( 10, 15 ) ; obj1 . printXY () ; obj2 . setXY ( 20, 25 ) ; obj2 . printXY () ; obj3 . setXY ( 30, 35 ) ; obj3 . printXY () ; ,obj1 . setXY ( 10, 15, ,this 指针不能显式声明 可以显式使用,void setXY ( int a, int b, Simple * const this ) this-x = a ; this-y = b ; ,2019/9/9,41,6.1.3 this指针,#include class Simple int x, y ; public : void setXY ( int a, int b) x = a ; y = b ; void printXY() cout x “,“ y endl ; ; ; void main() Simple obj1, obj2, obj3 ; obj1 . setXY ( 10, 15 ) ; obj1 . printXY () ; obj2 . setXY ( 20, 25 ) ; obj2 . printXY () ; obj3 . setXY ( 30, 35 ) ; obj3 . printXY () ; ,obj1.x,obj1.y,通过调用函数的对象 this 指针获取对象地址,2019/9/9,42,6.1.3 this指针,#include class Simple int x, y ; public : void setXY ( int a, int b) x = a ; y = b ; void printXY() cout x “,“ y endl ; ; ; void main() Simple obj1, obj2, obj3 ; obj1 . setXY ( 10, 15 ) ; obj1 . printXY () ; obj2 . setXY ( 20, 25 ) ; obj2 . printXY () ; obj3 . setXY ( 30, 35 ) ; obj3 . printXY () ; ,10,15,obj1.x,obj1.y,2019/9/9,43,6.1.3 this指针,#include class Simple int x, y ; public : void setXY ( int a, int b) x = a ; y = b ; void printXY() cout x “,“ y endl ; ; ; void main() Simple obj1, obj2, obj3 ; obj1 . setXY ( 10, 15 ) ; obj1 . printXY () ; obj2 . setXY ( 20, 25 ) ; obj2 . printXY () ; obj3 . setXY ( 30, 35 ) ; obj3 . printXY () ; ,10,15,obj1.x,obj1.y,2019/9/9,44,6.1.3 this指针,#include class Simple int x, y ; public : void setXY ( int a, int b) x = a ; y = b ; void printXY() cout x “,“ y endl ; ; ; void main() Simple obj1, obj2, obj3 ; obj1 . setXY ( 10, 15 ) ; obj1 . printXY () ; obj2 . setXY ( 20, 25 ) ; obj2 . printXY () ; obj3 . setXY ( 30, 35 ) ; obj3 . printXY () ; ,10,15,obj1.x,obj1.y,在 obj1 上操作,10 , 15 20 , 25 30 , 35,2019/9/9,45,6.1.3 this指针,#include class Simple int x, y ; public : void setXY ( int a, int b) x = a ; y = b ; void printXY() cout x “,“ y endl ; ; ; void main() Simple obj1, obj2, obj3 ; obj1 . setXY ( 10, 15 ) ; obj1 . printXY () ; obj2 . setXY ( 20, 25 ) ; obj2 . printXY () ; obj3 . setXY ( 30, 35 ) ; obj3 . printXY () ; ,10,15,obj1.x,obj1.y,10 , 15 20 , 25 30 , 35,2019/9/9,46,6.1.3 this指针,#include class Simple int x, y ; public : void setXY ( int a, int b) x = a ; y = b ; void printXY() cout x “,“ y endl ; ; ; void main() Simple obj1, obj2, obj3 ; obj1 . setXY ( 10, 15 ) ; obj1 . printXY () ; obj2 . setXY ( 20, 25 ) ; obj2 . printXY () ; obj3 . setXY ( 30, 35 ) ; obj3 . printXY () ; ,10,15,obj1.x,obj1.y,10 , 15 20 , 25 30 , 35,在 obj2 上操作,2019/9/9,47,6.1.3 this指针,#include class Simple int x, y ; public : void setXY ( int a, int b) x = a ; y = b ; void printXY() cout x “,“ y endl ; ; ; void main() Simple obj1, obj2, obj3 ; obj1 . setXY ( 10, 15 ) ; obj1 . printXY () ; obj2 . setXY ( 20, 25 ) ; obj2 . printXY () ; obj3 . setXY ( 30, 35 ) ; obj3 . printXY () ; ,10,15,obj1.x,obj1.y,20,25,obj2.x,obj2.y,10 , 15 20 , 25 30 , 35,在 obj2 上操作,2019/9/9,48,6.1.3 this指针,#include class Simple int x, y ; public : void setXY ( int a, int b) x = a ; y = b ; void printXY() cout x “,“ y endl ; ; ; void main() Simple obj1, obj2, obj3 ; obj1 . setXY ( 10, 15 ) ; obj1 . printXY () ; obj2 . setXY ( 20, 25 ) ; obj2 . printXY () ; obj3 . setXY ( 30, 35 ) ; obj3 . printXY () ; ,10,15,obj1.x,obj1.y,20,25,obj2.x,obj2.y,10 , 15 20 , 25 30 , 35,2019/9/9,49,6.1.3 this指针,#include class Simple int x, y ; public : void setXY ( int a, int b) x = a ; y = b ; void printXY() cout x “,“ y endl ; ; ; void main() Simple obj1, obj2, obj3 ; obj1 . setXY ( 10, 15 ) ; obj1 . printXY () ; obj2 . setXY ( 20, 25 ) ; obj2 . printXY () ; obj3 . setXY ( 30, 35 ) ; obj3 . printXY () ; ,10,15,obj1.x,obj1.y,20,25,obj2.x,obj2.y,10 , 15 20 , 25 30 , 35,在 obj2 上操作,2019/9/9,50,6.1.3 this指针,#include class Simple int x, y ; public : void setXY ( int a, int b) x = a ; y = b ; void printXY() cout x “,“ y endl ; ; ; void main() Simple obj1, obj2, obj3 ; obj1 . setXY ( 10, 15 ) ; obj1 . printXY () ; obj2 . setXY ( 20, 25 ) ; obj2 . printXY () ; obj3 . setXY ( 30, 35 ) ; obj3 . printXY () ; ,10,15,obj1.x,obj1.y,20,25,obj2.x,obj2.y,10 , 15 20 , 25 30 , 35,在 obj2 上操作,2019/9/9,51,6.1.3 this指针,#include class Simple int x, y ; public : void setXY ( int a, int b) x = a ; y = b ; void printXY() cout x “,“ y endl ; ; ; void main() Simple obj1, obj2, obj3 ; obj1 . setXY ( 10, 15 ) ; obj1 . printXY () ; obj2 . setXY ( 20, 25 ) ; obj2 . printXY () ; obj3 . setXY ( 30, 35 ) ; obj3 . printXY () ; ,10,15,obj1.x,obj1.y,20,25,obj2.x,obj2.y,10 , 15 20 , 25 30 , 35,2019/9/9,52,6.1.3 this指针,#include class Simple int x, y ; public : void setXY ( int a, int b) x = a ; y = b ; void printXY() cout x “,“ y endl ; ; ; void main() Simple obj1, obj2, obj3 ; obj1 . setXY ( 10, 15 ) ; obj1 . printXY () ; obj2 . setXY ( 20, 25 ) ; obj2 . printXY () ; obj3 . setXY ( 30, 35 ) ; obj3 . printXY () ; ,10,15,obj1.x,obj1.y,20,25,obj2.x,obj2.y,10 , 15 20 , 25 30 , 35,2019/9/9,53,6.1.3 this指针,#include class Simple int x, y ; public : void setXY ( int a, int b) x = a ; y = b ; void printXY() cout x “,“ y endl ; ; ; void main() Simple obj1, obj2, obj3 ; obj1 . setXY ( 10, 15 ) ; obj1 . printXY () ; obj2 . setXY ( 20, 25 ) ; obj2 . printXY () ; obj3 . setXY ( 30, 35 ) ; obj3 . printXY () ; ,10,15,obj1.x,obj1.y,20,25,obj2.x,obj2.y,30,35,obj3.x,obj3.y,10 , 15 20 , 25 30 , 35,2019/9/9,54,6.1.3 this
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 上海邦德职业技术学院《结构设计》2023-2024学年第二学期期末试卷
- 贴片电容生产流程简介
- 企业环保基础知识培训
- 护工与保洁技能培训大纲
- 2025广告预订合同范本
- 2025混凝土班组劳务合同样本
- 2025画册版权、知识产权及注册申请合同协议书范本
- 2025办公室文明合同范本
- 2025年高考历史必修二复习提纲
- 2025实习生合同范本
- 中国矿产资源集团大数据有限公司招聘考试真题2024
- 八年级英语下学期期中模拟卷(宿迁专用)(原卷版)
- 杭州市市级机关事业单位招聘真题2024
- 2025年科普知识竞赛题及答案(共100题)
- 高速公路消防知识
- 地下混凝土水池蓄水试验方案20240401
- 头晕、抑郁与焦虑关系解析与应对策略
- 初中入团考试题型及答案
- 2025年北京卫生职业学院高职单招高职单招英语2016-2024历年频考点试题含答案解析
- 2025年河南推拿职业学院单招职业技能考试题库含答案
- 居室空间设计 课件 项目九 卫生间空间设计
评论
0/150
提交评论