程序设计语言及基础
|
|
- 载倬 吉
- 6 years ago
- Views:
Transcription
1 Chapter 10 Classes: A Deeper Look, Part 2 杨明 yangming2002@seu.edu.cn
2 OBJECTIVES To specify const (constant) objects and const member functions. To create objects composed of other objects. To use friend functions and friend classes. To use the this pointer. To create and destroy objects dynamically with operators new and delete, respectively. To use static data members and member functions. 2
3 10.1 Introduction Topics 10.2 const (Constant) Objects and const Member Functions 10.3 Composition: Objects as Members of Classes 10.4 friend Functions and friend Classes 10.5 Using the this Pointer 10.6 Dynamic Memory Management with Operators new and delete 10.7 static Class Members 3
4 10.1 Introduction const 对象, 常成员函数, 常数据成员 类的组合 (composition): 一个类以其他类的对象作为成员 友元 (friend) 函数 : 非成员函数如何通过对象句柄访问类的私有成员? this 指针 : 非 static 成员函数的隐含参数 动态内存管理 : new 和 delete 运算符 静态 static 的类成员 4
5 10.1 Introduction Topics 10.2 const (Constant) Objects and const Member Functions 10.3 Composition: Objects as Members of Classes 10.4 friend Functions and friend Classes 10.5 Using the this Pointer 10.6 Dynamic Memory Management with Operators new and delete 10.7 static Class Members 5
6 10.2 const (Constant) Objects and const Member Functions const Time noon( 12, 0, 0 ); 构造后不能更改数据成员 措施 : 仅能调用 noon 对象的 const member function ( 常成员函数 ) OBJECT Member Function Access const const const non-const X non-const const non-const non-const 6
7 10.2 const (Constant) Objects and const Member Functions (1) 常成员函数 Prototype void printuniversal() const; Definition void Time::printUniversal() const { } 实现代码要求 : 不能修改本 (this)object ( 数据成员 ) 直接 不能调用其它 non-const 成员函数 间接 7
8 10.2 const (Constant) Objects and const Member Functions 1. void Time::test(Time &another) const 2. { 3. minute = 20; 4. // 不能修改 object, this->minute=20 5. printstandard(); 6. // 不能调用 non-const 成员函数 7. another.minute = 20; 8. // OK, 非 this object 9. another.sethour(6); 10. // OK 11. } + noon.test( wakeup ); 8
9 10.2 const (Constant) Objects and const Member Functions 注意点 : 成员函数是否为常成员函数, 不仅取决于它不修改本对象 不调用 non-const 成员函数, 而且必须显式地声明为 const! 构造函数 / 析构函数不能 也不需要声明为 const! 对象的常量特性体现在初始化 ( 构造 ) 后 析构之前. 建议 : 所有不更改 object 的成员函数均声明为 const 成员函数 ( 让 const 对象能正常访问 ) 9
10 10.2 const (Constant) Objects and const Member Functions (2) 常数据成员 constructor initializer list ( 构造函数初始化列表 ) Increment::Increment(int i) : increment( i ){..} 使用括号中的值构造 / 初始化该成员! 所有类数据成员都可以用构造函数初始化列表进行初始化, 而以下情况必须如此 : const data member ( 例外?) reference data member 引用类型的数据成员 member objects, 成员对象 派生类的基类 (base class) 10
11 1. class Increment 2. { 3. public: 4. Increment( int c = 0, int i = 1 ); // default constructor // function addincrement definition 7. void addincrement() 8. { 9. count += increment; 10. } // end function addincrement void print() const; // prints count and increment 13. private: 14. int count; 15. const int increment; // const data member 16. int &refcount; 17. }; // end class Increment 11
12 1. // constructor 2. Increment::Increment( int c, int i ) 3. : count( c ), // initializer for non-const member 4. increment( i ), // required initializer for const member 5. refcount ( count ) // required initializer for reference member 6. { 7. cout << "Now count = " << count << ", increment = " << increment 8. << " and refcount= " << refcount<< endl; 9. refcount = 99; 10. } // print count and increment values 13. void Increment::print() const 14. { 15. cout << "count = " << count << ", increment = " << increment << endl; 16. } Increment value( 10, 5 ); value.print(); Now count = 10, increment = 5 and refcount = 10 count = 99, increment = 5 12
13 10.1 Introduction Topics 10.2 const (Constant) Objects and const Member Functions 10.3 Composition: Objects as Members of Classes 10.4 friend Functions and friend Classes 10.5 Using the this Pointer 10.6 Dynamic Memory Management with Operators new and delete 10.7 static Class Members 13
14 10.3 Composition: Objects as Members of Classes Composition ( 组合, has-a): A class has objects of other class as members. (vs is-a) Host Object ( 宿主对象 ) vs Contained Object( 被包含对象 ) Employees - LastName: String - FirstName: String - birthdate: Date - hiredate: Date 14
15 10.3 Composition: Objects as Members of Classes // P53 fig03_05.cpp 15. class GradeBook 16. { 19. void setcoursename ( string name ) 20. { 21. coursename = name; 22. } 38. private: 39. string coursename; 40. }; 15
16 #include <iostream> #include <iostream> using namespace std; using namespace std; class Test{ class Test{ public: public: Test( int a ){ num = a; } Test( int a ){ num = a; } private: private: int num; int num; }; }; class Test2{ class Test2{ public: public: Test2( int a, int b ) { num = b; } Test2( int a, int b ): t(a) { num = b; } private: private: Test t; Test t; int num; int num; }; }; 使用构造函数初始化列表, int main() int main() 对类成员 t 进行初始化! { { Test2 test( 10, 20 ); Test2 test( 10, 20 ); return 0; error C2512: 'Test' : no appropriate return 0; } default constructor available } 16
17 10.3 Composition: Objects as Members of Classes 结论 : 成员对象类若有缺省构造函数, 则可不使用初始化列表进行初始化 若无缺省构造函数, 则必须使用初始化列表 如果成员对象没有显式地在成员初始化列表中初始化, 则自动隐含调用其缺省构造函数 (default constructor). 17
18 1. #include <iostream> 2. using namespace std; 3. class Test{ 4. public: 5. Test( int a ){ num = a; } 6. private: 7. int num; 8. }; 9. class Test2{ 10. public: 11. Test2( const Test &ref, int b ): t(ref) { num = b; } 12. private: 13. Test t; 14. int num; 15. }; 16. int main() 17. { 18. Test ref( 10 ); Test2 test( ref, 20 ); 19. return 0; 20. } 无接收此类型参数的构造函数, 如何正确执行? 缺省拷贝构造函数 18
19 10.3 Composition: Objects as Members of Classes 成员对象的构造和析构顺序 (Employee 类 manager 对象包含 Date 类的 birthdate 和 hiredate) 成员对象的构造先于宿主对象构造 : birthdate 和 hiredate manager 多个成员对象之间按照类定义中的声明顺序构造 (not in the order they are listed in the constructor s member initializer list) 构造 : birthdate hiredate 成员对象的析构后于宿主对象析构 : manager hiredate birthdate 19
20 10.3 Composition: Objects as Members of Classes manager hiredate birthdate hire birth birth 构造 : Date object constructor for date 7/24/1949 Hire 构造 : Date object constructor for date 3/12/1988 birthdate 缺省拷贝构造 : 无输出 hiredate 缺省拷贝构造 : 无输出 manager 构造 : Employee object constructor: Bob Blue manager 析构 : Employee object destructor: Blue, Bob hiredate 析构 : Date object destructor for date 3/12/1988 birthdate 析构 : Date object destructor for date 7/24/1949 hire 析构 : Date object destructor for date 3/12/1988 birth 析构 : Date object destructor for date 7/24/1949 main 栈区 20
21 10.3 Composition: Objects as Members of Classes 三点修改 : 去掉初始化列表中 birthdate(dateofbirth) 和 hiredate(dateofhire) 什么效果? 自动隐性调用缺省构造函数 去掉 Employee 构造函数中的 Date 引用符号什么效果? 多了两次拷贝构造函数调用 去掉 Date 类 print() 函数的 const 声明? Fig10.11 Employee::print() 函数 26/28 行报错 21
22 10.1 Introduction Topics 10.2 const (Constant) Objects and const Member Functions 10.3 Composition: Objects as Members of Classes 10.4 friend Functions and friend Classes 10.5 Using the this Pointer 10.6 Dynamic Memory Management with Operators new and delete 10.7 static Class Members 22
23 10.4 friend Functions and friend Classes 类外部的函数和类, 如何通过对象句柄访问该类的非公有成员? Standalone functions or entire classes may be declared to be friends of another class, and hence has the right to access the nonpublic (and public) members of the class. Friend Function( 友元函数 ) & Friend Class( 友元类 ) 意义 : 提高性能 典型应用 : operator overloading( 运算符重载 ) 23
24 10.4 friend Functions and friend Classes --- 友元函数 To declare a function as a friend of a class, precede the function prototype in the class definition with keyword friend. class Count { friend void setx( Count &, int ); public: Count() : x(0) // initialize x to 0 { // empty body } Count 授权 setx 为其友元 void print() const { cout << x << endl; } private: int x; 私有 }; void setx( Count &c, int val ) { c.x = val; } int main() { Count counter; counter.print(); } setx( counter, 8 ); counter.print(); return 0;
25 10.4 friend Functions and friend Classes --- 友元类 To declare 1 all member functions of class ClassTwo as friends of class ClassOne 2 place a declaration of the form friend class ClassTwo; in the definition of class ClassOne. 25
26 10.4 friend Functions and friend Classes --- 友元类 class ClassOne int main() { { friend class ClassTwo; // friend declaration ClassOne one; int x, y; ClassTwo two; }; two.setx( one, 10 ); ClassOne 授权 ClassTwo 为其友元 two.sety( one, 20 ); class ClassTwo{ two.printclassone( one ); public: void setx(classone &one, int x){ one.x = x; } return 0; void sety(classone &one, int y){ one.y = y; } } void printclassone(classone &one){ cout << "ClassOne.x = " << one.x << ", ClassOne.y = " << one.y << endl; } }; ClassOne.x = 10, ClassOne.y = 20 error C2248: cannot access private member declared in class 'ClassOne' 26
27 10.1 Introduction Topics 10.2 const (Constant) Objects and const Member Functions 10.3 Composition: Objects as Members of Classes 10.4 friend Functions and friend Classes 10.5 Using the this Pointer 10.6 Dynamic Memory Management with Operators new and delete 10.7 static Class Members 27
28 10.5 Using the this Pointer Test 类成员函数 void Test::printX( ) { cout<<x; } void Test::printY( ) const test1.printx() test1 int x, y printx 函数如何知道应访问哪个对象的内存空间的 x? test2 int x, y 28
29 Test 成员函数 void Test::printX( ) 10.5 Using the this Pointer void Test::printY( ) const printx( Test * const this ){ cout << this->x; } printy( const Test * const this ) test1.printx() test1.printx( &test1 ) 特例 : static 成员函数无 this 指针 指针常量, 始终指向当前对象 29
30 在成员函数中 : 10.5 Using the this Pointer Implicitly 隐性 this 指针调用 x = 10; Explicitly 显式调用 this->x = 10; (*this).x = 10; 30
31 为何常成员函数 printy 不能调用非常成员函数 printx? void Test::printX( ); 10.5 Using the this Pointer void Test::printY( ) const { printx(); } void Test::printX( Test * const this ); void Test::printY( const Test * const this ) const { printx( this ); } 31
32 Cascaded Function Calls( 级联函数调用 ) 30. Time& Time::setHour( int h ) // note Time& return 31. { 10.5 Using the this Pointer 32. hour = ( h >= 0 && h < 24 )? h : 0; // validate hour 33. return *this; // enables cascading 34. } // end function sethour 指向 t 的指针常量! 1. Time t; // P335 Fig t.sethour(18).setminute(30).setsecond(22); 3. t.setminute(30).setsecond(22); 4. t.setsecond(22); 32
33 10.1 Introduction Topics 10.2 const (Constant) Objects and const Member Functions 10.3 Composition: Objects as Members of Classes 10.4 friend Functions and friend Classes 10.5 Using the this Pointer 10.6 Dynamic Memory Management with Operators new and delete 10.7 static Class Members 33
34 10.6 Dynamic Memory Management with Operators new and delete Motivation char words[1000]; Fixed-size array. 1000? Dynamic memory management 根据需求分配 (allocate)/ 释放 (deallocate) 内存 new / delete operator 34
35 10.6 Dynamic Memory Management with Operators new and delete use the new operator to dynamically allocate the exact amount of memory required at execution time in the free store (sometimes called the heap 堆 ) return the memory to the free store by using the delete operator to deallocate (i.e., release) the memory, which can then be reused by future new operations memory leak ( 内存泄露 ) 35
36 10.6 Dynamic Memory Management with Operators new and delete (1) 基本数据类型 1. double *ptr = new double; ( ); 2. cout << *ptr << endl; 3. delete ptr; 初始值 e+066 ptr
37 10.6 Dynamic Memory Management with Operators new and delete (1) 基本数据类型 1. double *ptr = new double( ); 2. cout << ptr << endl; 3. cout << *ptr << endl; 4. delete ptr; 5. cout << ptr << endl; 6. ptr = 0; ptr
38 10.6 Dynamic Memory Management with Operators new and delete (2) 抽象数据类型 ( 类 ) new 对象 : allocates storage of the proper size for an object calls the constructor to initialize the object returns a pointer of the type specified to the right of the new operator delete 对象 : calls the destructor for the object to which pointer points deallocates the memory associated with the object 38
39 (2) 抽象数据类型 ( 类 ) 1. class Time{ 2. public: 3. Time(){ cout << "Time constructor called.\n"; } 4. ~Time(){ cout << "Time destructor called.\n"; } 5. }; 6. int main() 7. { 8. Time *timeptr = new Time; 9. delete timeptr; 10. return 0; 11. } 10.6 Dynamic Memory Management with Operators new and delete Time constructor called. Time destructor called. 39
40 10.6 Dynamic Memory Management with Operators new and delete (2) 抽象数据类型 ( 类 ) 1. class Time2{ 2. public: 3. Time2( int, int, int); 4. ~Time2(); 5. }; 6. int main() 7. { 8. Time2 *timeptr = new Time2( 12, 45, 0 ); 9. delete timeptr; 10. return 0; 11. } 构造函数参数列表 40
41 10.6 Dynamic Memory Management with Operators new and delete (3) 数组 基本数据类型 1. int size = 10; 2. int *gradesarray = new int[ size ]; 3. delete [ ] gradesarray; 注意与 Fixed size 数组的区别 : Constant integral expression vs Any integral expression 41
42 10.6 Dynamic Memory Management with Operators new and delete (3) 数组 类 ( 有缺省构造函数 ) 1. Time *timeptr = new Time[5]; 2. delete [ ] timeptr; Time constructor called. Time constructor called. Time constructor called. Time constructor called. Time constructor called. Time destructor called. Time destructor called. Time destructor called. Time destructor called. Time destructor called. 42
43 10.6 Dynamic Memory Management with Operators new and delete (3) 数组 类对象 ( 有缺省构造函数 ) 1. Time *timeptr = new Time[5]; 2. delete timeptr; Time constructor called. Time constructor called. Time constructor called. Time constructor called. Time constructor called. Time destructor called. 43
44 10.6 Dynamic Memory Management with Operators new and delete (3) 数组 类对象 ( 无缺省构造函数 ) when allocating an array of objects dynamically, the programmer cannot pass arguments to each object's constructor. 无法调用带参数的构造函数! Instead, each object in the array is initialized by its default constructor. 44
45 10.1 Introduction Topics 10.2 const (Constant) Objects and const Member Functions 10.3 Composition: Objects as Members of Classes 10.4 friend Functions and friend Classes 10.5 Using the this Pointer 10.6 Dynamic Memory Management with Operators new and delete 10.7 static Class Members 45
46 10.7 static Class Members 需求 : 活期存款账户 (SavingsAccount 类 ), 统计利息 / 余额 账户名应账户 ( 对象 ) 而异 存款额 年利率 annualinterestrate 特点 : 所有存款账户都应是相同的年利率 静态数据成员 annualinterestrate static 数据成员 static 成员函数 46
47 10.7 static Class Members 在类定义中, 用 static 关键词修饰数据成员和成员函数的声明 : Static data member, 静态数据成员 又称类变量, 由所有对象共享 和全局量一样是静态存储类别 Static member function, 静态成员函数 可通过类名直接调用, 无 this 指针 47
48 10.7 static Class Members --- 静态数据成员 在类定义中声明, 在类定义外定义和初始化 ( 特例?) class Employee{ static int count; }; int Employee::count = 0; 只初始化一次, 若没有显式初始化, 则 基本数据类型 : 缺省初始化为 0 抽象数据类型 ( 类对象 ): 默认调用缺省构造函数 48
49 #include <iostream> using namespace std; class Class1{ public: Class1() { cout << "num1 = " << num1 << endl; } void print() { cout << "num2 = " << num2 << endl; } private: static int num1; const static int num2 = 10; }; int Class1::num1; = 20; class Class2{ public: Class2(){ } static Class1 obj1; }; Class1 Class2::obj1; int main() { cout << "AAA\n"; Class2 obj2; obj2.obj1.print(); return 0; } num1 = 20 AAA num2 = 10 num1 = 0 AAA num2 = 10 error LNK2001: unresolved external symbol "private: static int Class1::num1" 49
50 #include <iostream> using namespace std; class Class1{ public: Class1(int n) { cout << "num1 = " << num1 << endl; } void print() { cout << "num2 = " << num2 << endl; } private: static int num1; const static int num2 = 10; }; int main() { Class2 obj2; obj2.obj1.print(); return 0; } int Class1::num1 = 20; class Class2{ public: Class2(){ } static Class1 obj1; }; Class1 Class2::obj1; = Class1(30); Class1 Class2::obj1(30); 50
51 10.7 static Class Members --- 静态数据成员 7.7 Case Study: Class GradeBook Using an Array to Store Grades 数据成员 : 普通, const, static, static const 1 普通数据成员 在类定义中只能声明, 不能初始化 可在构造函数中赋值 2 const 数据成员 在对象整个生存期中都不能改变, 在类定义中只能声明, 不能初始化 Conflict: const 数据必须初始化 必须在构造函数初始化列表中初始化 65 51
52 10.7 static Class Members --- 静态数据成员 数据成员 : 普通, const, static, static const Case Study: Class GradeBook Using an Array to Store Grades static 数据成员 意义 : 在类的所有对象之间共享, 称为 class variable( 类变量 ) public 类变量可以直接通过类名 +:: 访问 在类定义中只能声明, 不能初始化 在类外部给出定义和初始化 67 52
53 10.7 static Class Members --- 静态数据成员 数据成员 : 普通, const, static, static const Case Study: Class GradeBook Using an Array to Store Grades static const 数据成员 特殊的 static 数据成员, 一般在类定义中只能声明 不能初始化, 须在类外部给出定义和初始化 但如果是整数数据成员 (integral), 则可在类定义中声明并初始化 (ISO C++) (Textbook P ) 69 53
54 10.7 static Class Members --- 静态成员函数 #include <iostream> using namespace std; class Obj { public: Obj( int n ){ num = n; } static void print() { cout << num << endl; } private: int num; }; int main( ) { Obj::print(); return 0; } 仅需在类定义中函数返回类型前, 加 static 可通过对象访问, 也可直接通过类名 +:: 访问 没有 this 指针, 不能访问非静态数据成员, 也不能调用非静态成员函数 error C2597: illegal reference to non-static member 'Obj::num' 54
55 10.7 static Class Members --- 静态成员函数 程序注意要点 : 静态成员函数和静态成员变量的使用 静态函数只能访问静态数据 静态数据独立于对象, 被所有对象共享 如何动态内存分配生成对象? new/delete 涉及对象的构造和析构 55
56 10.7 static Class Members --- 静态成员函数 static 数据成员 non-static 数据成员 static 成员函数 / X non-static 成员函数 / / 56
57 Summary 常量对象和常成员函数 对象的组合 友元函数和友元类 this 指针 动态内存分配 静态类成员 57
58 Homework 实验必选题目 ( 交实验报告 ): 实验任选题目 ( 不交实验报告 ): 作业题目 (Homework): 58
Microsoft PowerPoint - 8. 运算符重载 Operator Overloading.pptx
运算符重载 Operator Overloading class Point { public: ; double x_, y_; Why Operator Overloading? Point (double x =0, double y = 0):x_(x),y_(y) { int main(){ Point a(1., 2), b(3,4); Point c = a + b; return 0;
More informationMicrosoft PowerPoint - string_kruse [兼容模式]
Strings Strings in C not encapsulated Every C-string has type char *. Hence, a C-string references an address in memory, the first of a contiguous set of bytes that store the characters making up the string.
More informationStrings
Inheritance Cheng-Chin Chiang Relationships among Classes A 類 別 使 用 B 類 別 學 生 使 用 手 機 傳 遞 訊 息 公 司 使 用 金 庫 儲 存 重 要 文 件 人 類 使 用 交 通 工 具 旅 行 A 類 別 中 有 B 類 別 汽 車 有 輪 子 三 角 形 有 三 個 頂 點 電 腦 內 有 中 央 處 理 單 元 A
More information无类继承.key
无类继承 JavaScript 面向对象的根基 周爱 民 / aimingoo aiming@gmail.com https://aimingoo.github.io https://github.com/aimingoo rand = new Person("Rand McKinnon",... https://docs.oracle.com/cd/e19957-01/816-6408-10/object.htm#1193255
More informationMicrosoft PowerPoint - L17_Inheritance_v4.pptx
C++ Programming Lecture 17 Wei Liu ( 刘 威 ) Dept. of Electronics and Information Eng. Huazhong University of Science and Technology May. 2015 Lecture 17 Chapter 20. Object-Oriented Programming: Inheritance
More informationMicrosoft Word - chap10.doc
78 10. Inheritance in C++ 我 們 已 介 紹 了 物 件 導 向 程 式 的 第 一 個 主 要 特 性, 即 程 式 可 模 組 化 成 為 類 別 ( 物 件 ), 類 別 具 有 資 料 封 裝 的 特 性 接 下 來 我 們 要 介 紹 物 件 導 向 程 式 的 另 一 個 主 要 特 性, 那 就 是 類 別 具 有 繼 承 的 功 能 繼 承 就 是 重 複
More informationC++ 程式設計
C C 料, 數, - 列 串 理 列 main 數串列 什 pointer) 數, 數, 數 數 省 不 不, 數 (1) 數, 不 數 * 料 * 數 int *int_ptr; char *ch_ptr; float *float_ptr; double *double_ptr; 數 (2) int i=3; int *ptr; ptr=&i; 1000 1012 ptr 數, 數 1004
More informationOOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数
OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数 复习 类的复用 组合 (composition): has-a 关系 class MyType { public int i; public double d; public char c; public void set(double
More informationMicrosoft PowerPoint - CPP-Ch Print.ppt [兼容模式]
Chapter 13 Object-Oriented Programming: Polymorphism http://jssec.seu.edu.cn 杨明 yangming2002@seu.edu.cn OBJECTIVES What polymorphism( 多态 ) is, how it makes programming more convenient, and how it makes
More informationFun Time (1) What happens in memory? 1 i n t i ; 2 s h o r t j ; 3 double k ; 4 char c = a ; 5 i = 3; j = 2; 6 k = i j ; H.-T. Lin (NTU CSIE) Referenc
References (Section 5.2) Hsuan-Tien Lin Deptartment of CSIE, NTU OOP Class, March 15-16, 2010 H.-T. Lin (NTU CSIE) References OOP 03/15-16/2010 0 / 22 Fun Time (1) What happens in memory? 1 i n t i ; 2
More informationMicrosoft Word - ch04三校.doc
4-1 4-1-1 (Object) (State) (Behavior) ( ) ( ) ( method) ( properties) ( functions) 4-2 4-1-2 (Message) ( ) ( ) ( ) A B A ( ) ( ) ( YourCar) ( changegear) ( lowergear) 4-1-3 (Class) (Blueprint) 4-3 changegear
More informationOOP with Java 通知 Project 4: 4 月 19 日晚 9 点
OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 4 月 19 日晚 9 点 复习 类的复用 组合 (composition): has-a 关系 class MyType { public int i; public double d; public char c; public void set(double x) { d
More informationC 1 # include <stdio.h> 2 int main ( void ) { 4 int cases, i; 5 long long a, b; 6 scanf ("%d", & cases ); 7 for (i = 0;i < cases ;i ++) 8 { 9
201 201 21 ( ) 1. C pa.c, pb.c, 2. C++ pa.cpp, pb.cpp Compilation Error long long cin scanf Time Limit Exceeded 1: A 1 B 1 C 5 D RPG 10 E 10 F 1 G II 1 1 201 201 C 1 # include 2 int main ( void
More informationMicrosoft Word - 物件導向編程精要.doc
Essential Object-Oriented Programming Josh Ko 2007.03.11 object-oriented programming C++ Java OO class object OOP Ruby duck typing complexity abstraction paradigm objects objects model object-oriented
More informationOOP with Java 通知 Project 3: 3 月 29 日晚 9 点 4 月 1 日上课
OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 3: 3 月 29 日晚 9 点 4 月 1 日上课 复习 Java 包 创建包 : package 语句, 包结构与目录结构一致 使用包 : import restaurant/ - people/ - Cook.class - Waiter.class - tools/ - Fork.class
More informationStrings
Polymorphism and Virtual Functions Cheng-Chin Chiang Virtual Function Basics 多 型 (Polymorphism) 賦 予 一 個 函 數 多 種 意 涵, 存 在 於 同 一 類 別 之 內 祖 先 類 別 與 後 代 類 別 間 物 件 導 向 程 式 設 計 基 本 原 理 虛 擬 函 數 (Virtual Function)
More information2013 C 1 # include <stdio.h> 2 int main ( void ) 3 { 4 int cases, a, b, i; 5 scanf ("%d", & cases ); 6 for (i = 0;i < cases ;i ++) 7 { 8 scanf ("%d %d
2013 18 ( ) 1. C pa.c, pb.c, 2. C++ pa.cpp, pb.cpp, Compilation Error cin scanf Time Limit Exceeded 1: A 5 B 5 C 5 D 5 E 5 F 5 1 2013 C 1 # include 2 int main ( void ) 3 { 4 int cases, a, b,
More information新版 明解C++入門編
511!... 43, 85!=... 42 "... 118 " "... 337 " "... 8, 290 #... 71 #... 413 #define... 128, 236, 413 #endif... 412 #ifndef... 412 #if... 412 #include... 6, 337 #undef... 413 %... 23, 27 %=... 97 &... 243,
More informationMicrosoft PowerPoint - 6. 用户定义类型User-defined Datatypes.ppt [兼容模式]
用户定义类型 User-defined Datatypes classes and structs 几何向量 (Geometry Vector) 二维平面上的向量由起点和终点构成 每个点包含两个坐标 (x, y), 因此一个向量需要四个实数表示 Start= (0.9,1.5) Start= (0.4,0.8) int main() { double xstart = 0.4; double xend
More informationEJB-Programming-3.PDF
:, JBuilder EJB 2.x CMP EJB Relationships JBuilder EJB Test Client EJB EJB Seminar CMP Entity Beans Value Object Design Pattern J2EE Design Patterns Value Object Value Object Factory J2EE EJB Test Client
More information第3章.doc
3 3 3 3.1 3 IT Trend C++ Java SAP Advantech ERPCRM C++ C++ Synopsys C++ NEC C C++PHP C++Java C++Java VIA C++ 3COM C++ SPSS C++ Sybase C++LinuxUNIX Motorola C++ IBM C++Java Oracle Java HP C++ C++ Yahoo
More information第七讲 继承与多态
第 七 章 继 承 与 派 生 1 本 章 主 要 内 容 的 继 承 成 员 的 访 问 控 制 单 继 承 与 多 继 承 派 生 的 构 造 析 构 函 数 成 员 的 标 识 与 访 问 深 度 探 索 2 的 继 承 与 派 生 的 继 承 与 派 生 保 持 已 有 的 特 性 而 构 造 新 的 过 程 称 为 继 承 在 已 有 的 基 础 上 新 增 自 己 的 特 性 而 产 生
More informationC++ 程序设计 实验 2 - 参考答案 MASTER 2017 年 5 月 21 日 1
C++ 程序设计 实验 2 - 参考答案 MASTER 2017 年 5 月 21 日 1 1 CRECT 类 1 CRect 类 设计矩形类, 包含 长度和宽度信息 基本构造函数 基础属性的访问接口 ( 读 / 写, Read/Write, Get/Set) 计算周长和面积 ( 注 : 基本构造函数, 一个无参数的默认构造函数, 以及一个初始化数据成员的构造函数如果数据成员的初始化有多种形式, 就提供多个构造函数
More informationuntitled
(encapsulation) 例 類 說 類 料 來 料 information hiding 念 (inheritance) 來說 類 類 類 類 類 類 行 利 來 (polymorphism) 不 類 數 不 1 2 3 4 類 類 不 類 不 類 5 6 7 // virtual 不見了 #include #include using namespace
More information幻灯片 1
第三课类和对象 ( 封装 ) 互联网新技术在线教育领航者 1 内容概述 1. 封装的概念 2. 访问控制 3. 栈类的封装 4. 构造与析构 5.myString 构造函数 6. 构造与析构的次序 7. 类文件写法 8. 对象的内存 9.this 指针初探 10. 构造函数初始值列表 11. 拷贝构造和赋值运算符重载 12. 浅拷贝 13. 深拷贝 14. 成员函数内联 15. 友元 16.const
More informationMicrosoft PowerPoint - 10 模板 Template.pptx
模板 Tempalte 泛型编程的需要 Why Templates? 设想你对整数类型实现了一个排序算法 : void sort(int *is,int n); 用该函数可以对实 复数或工资单排序吗? 模板可以复用源代码 - 泛型编程. inline void Swap( int &x, int &y){ int t = x; x = y; y =t; inline void Swap(double
More informationOOP with Java 通知 Project 3 提交时间 3 月 29 日晚 9 点 Piazza Project 2 投票
OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 3 提交时间 3 月 29 日晚 9 点 Piazza Project 2 投票 复习 创建对象 构造函数 函数重载 : 函数 = 函数名 + 参数列表 public class MyType { int i; double d; char c; void set(double x)
More information6-1 Table Column Data Type Row Record 1. DBMS 2. DBMS MySQL Microsoft Access SQL Server Oracle 3. ODBC SQL 1. Structured Query Language 2. IBM
CHAPTER 6 SQL SQL SQL 6-1 Table Column Data Type Row Record 1. DBMS 2. DBMS MySQL Microsoft Access SQL Server Oracle 3. ODBC SQL 1. Structured Query Language 2. IBM 3. 1986 10 ANSI SQL ANSI X3. 135-1986
More informationFY.DOC
高 职 高 专 21 世 纪 规 划 教 材 C++ 程 序 设 计 邓 振 杰 主 编 贾 振 华 孟 庆 敏 副 主 编 人 民 邮 电 出 版 社 内 容 提 要 本 书 系 统 地 介 绍 C++ 语 言 的 基 本 概 念 基 本 语 法 和 编 程 方 法, 深 入 浅 出 地 讲 述 C++ 语 言 面 向 对 象 的 重 要 特 征 : 类 和 对 象 抽 象 封 装 继 承 等 主
More informationMicrosoft Word - 01.DOC
第 1 章 JavaScript 简 介 JavaScript 是 NetScape 公 司 为 Navigator 浏 览 器 开 发 的, 是 写 在 HTML 文 件 中 的 一 种 脚 本 语 言, 能 实 现 网 页 内 容 的 交 互 显 示 当 用 户 在 客 户 端 显 示 该 网 页 时, 浏 览 器 就 会 执 行 JavaScript 程 序, 用 户 通 过 交 互 式 的
More informationuntitled
1 Outline 數 料 數 數 列 亂數 練 數 數 數 來 數 數 來 數 料 利 料 來 數 A-Z a-z _ () 不 數 0-9 數 不 數 SCHOOL School school 數 讀 school_name schoolname 易 不 C# my name 7_eleven B&Q new C# (1) public protected private params override
More information运算符重载 为什么要 运算符重载 那些运算符可以重载, 哪些不可以 如何实现运算符重载 实现方式 : 成员函数与非成员函数 类型转换 怎样实现对象与基本数据类型数据的运算 2
第十一讲 运算符重载 与类型转换 运算符重载 为什么要 运算符重载 那些运算符可以重载, 哪些不可以 如何实现运算符重载 实现方式 : 成员函数与非成员函数 类型转换 怎样实现对象与基本数据类型数据的运算 2 为什么要运算符重载 预定义的运算符只针对基本数据类型, 若要对类的对象进行类似的运算, 需要重新定义运算符的功能 运算符重载实质就是函数重载 : 对已有的运算符赋予多重含义, 使得同一个运算符作用于不同类型的数据时导致不同的行为
More informationMicrosoft Word - 970617cppFinalSolution.doc
國 立 台 灣 海 洋 大 學 資 訊 工 程 系 C++ 程 式 設 計 期 末 考 參 考 答 案 姓 名 : 系 級 : 學 號 : 97/06/17 考 試 時 間 :10:00 12:10 試 題 敘 述 蠻 多 的, 看 清 楚 題 目 問 什 麼, 針 對 重 點 回 答 是 很 重 要 的 ; 不 確 定 的 請 一 定 要 當 場 提 出 來, 不 要 白 花 力 氣 在 誤 會
More information提问袁小兵:
C++ 面 试 试 题 汇 总 柯 贤 富 管 理 软 件 需 求 分 析 篇 1. STL 类 模 板 标 准 库 中 容 器 和 算 法 这 部 分 一 般 称 为 标 准 模 板 库 2. 为 什 么 定 义 虚 的 析 构 函 数? 避 免 内 存 问 题, 当 你 可 能 通 过 基 类 指 针 删 除 派 生 类 对 象 时 必 须 保 证 基 类 析 构 函 数 为 虚 函 数 3.
More information概述
OPC Version 1.6 build 0910 KOSRDK Knight OPC Server Rapid Development Toolkits Knight Workgroup, eehoo Technology 2002-9 OPC 1...4 2 API...5 2.1...5 2.2...5 2.2.1 KOS_Init...5 2.2.2 KOS_InitB...5 2.2.3
More informationK301Q-D VRT中英文说明书141009
THE INSTALLING INSTRUCTION FOR CONCEALED TANK Important instuction:.. Please confirm the structure and shape before installing the toilet bowl. Meanwhile measure the exact size H between outfall and infall
More informationOOP with Java 通知 Project 4: 5 月 2 日晚 9 点
OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 5 月 2 日晚 9 点 复习 类的复用 组合 (composition): has-a 关系 class MyType { public int i; public double d; public char c; public void set(double x) { d =
More information1 Framework.NET Framework Microsoft Windows.NET Framework.NET Framework NOTE.NET NET Framework.NET Framework 2.0 ( 3 ).NET Framework 2.0.NET F
1 Framework.NET Framework Microsoft Windows.NET Framework.NET Framework NOTE.NET 2.0 2.0.NET Framework.NET Framework 2.0 ( 3).NET Framework 2.0.NET Framework ( System ) o o o o o o Boxing UnBoxing() o
More informationMicrosoft PowerPoint - 第06讲_继承.ppt [兼容模式]
程序设计实习 (I): C++ 程序设计 第六讲继承 上节内容回顾 三种运算符重载的实现方式 重载为普通函数 重载为成员函数 重载为友元 常见的运算符重载 流运算符 (>>
More informationChapter12 Derived Classes
继 承 -- 派 生 类 复 习 1. 有 下 面 类 的 说 明, 有 错 误 的 语 句 是 : class X { A) const int a; B) X(); C) X(int val) {a=2 D) ~X(); 答 案 :C 不 正 确, 应 改 成 X(int val) : a(2) { 2. 下 列 静 态 数 据 成 员 的 特 性 中, 错 误 的 是 A) 说 明 静 态 数
More informationMicrosoft Word - Final Exam Review Packet.docx
Do you know these words?... 3.1 3.5 Can you do the following?... Ask for and say the date. Use the adverbial of time correctly. Use Use to ask a tag question. Form a yes/no question with the verb / not
More informationEJB-Programming-4-cn.doc
EJB (4) : (Entity Bean Value Object ) JBuilder EJB 2.x CMP EJB Relationships JBuilder EJB Test Client EJB EJB Seminar CMP Entity Beans Session Bean J2EE Session Façade Design Pattern Session Bean Session
More informationuntitled
3 C++ 3.1 3.2 3.3 3.4 new delete 3.5 this 3.6 3.7 3.1 3.1 class struct union struct union C class C++ C++ 3.1 3.1 #include struct STRING { typedef char *CHARPTR; // CHARPTR s; // int strlen(
More informationMicrosoft Word - (web)_F.1_Notes_&_Application_Form(Chi)(non-SPCCPS)_16-17.doc
聖 保 羅 男 女 中 學 學 年 中 一 入 學 申 請 申 請 須 知 申 請 程 序 : 請 將 下 列 文 件 交 回 本 校 ( 麥 當 勞 道 33 號 ( 請 以 A4 紙 張 雙 面 影 印, 並 用 魚 尾 夾 夾 起 : 填 妥 申 請 表 並 貼 上 近 照 小 學 五 年 級 上 下 學 期 成 績 表 影 印 本 課 外 活 動 表 現 及 服 務 的 證 明 文 件 及
More informationuntitled
A, 3+A printf( ABCDEF ) 3+ printf( ABCDEF ) 2.1 C++ main main main) * ( ) ( ) [ ].* ->* ()[] [][] ** *& char (f)(int); ( ) (f) (f) f (int) f int char f char f(int) (f) char (*f)(int); (*f) (int) (
More informationC/C++语言 - C/C++数据
C/C++ C/C++ Table of contents 1. 2. 3. 4. char 5. 1 C = 5 (F 32). 9 F C 2 1 // fal2cel. c: Convert Fah temperature to Cel temperature 2 # include < stdio.h> 3 int main ( void ) 4 { 5 float fah, cel ;
More information運算子多載 Operator Overloading
多型 Polymorphism 講師 : 洪安 1 多型 編譯時期多型 ( 靜態多型 ) function overloading 如何正確呼叫同名的函數? 利用參數個數與型態 operator overloading 其實同 function overloading 執行時期多型 ( 或動態多型 ) 如何正確呼叫不同物件的相同名稱的成員函數 利用繼承與多型 2 子類別與父類別物件間的指定 (assignment)
More information幻灯片 1
信息科学技术学院 程序设计实习 郭炜微博 http://weibo.com/guoweiofpku http://blog.sina.com.cn/u/3266490431 刘家瑛微博 http://weibo.com/pkuliujiaying 1 信息科学技术学院 程序设计实习 郭炜刘家瑛 继承和派生 ( 教材 P215) 2 继承和派生的概念 继承 : 在定义一个新的类 B 时, 如果该类与某个已有的类
More informationChapter 9: Objects and Classes
Fortran Algol Pascal Modula-2 BCPL C Simula SmallTalk C++ Ada Java C# C Fortran 5.1 message A B 5.2 1 class Vehicle subclass Car object mycar public class Vehicle extends Object{ public int WheelNum
More informationImproved Preimage Attacks on AES-like Hash Functions: Applications to Whirlpool and Grøstl
SKLOIS (Pseudo) Preimage Attack on Reduced-Round Grøstl Hash Function and Others Shuang Wu, Dengguo Feng, Wenling Wu, Jian Guo, Le Dong, Jian Zou March 20, 2012 Institute. of Software, Chinese Academy
More informationOOP with Java 通知 Project 2 提交时间 : 3 月 14 日晚 9 点 另一名助教 : 王桢 学习使用文本编辑器 学习使用 cmd: Power shell 阅读参考资料
OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 2 提交时间 : 3 月 14 日晚 9 点 另一名助教 : 王桢 Email: 51141201063@ecnu.cn 学习使用文本编辑器 学习使用 cmd: Power shell 阅读参考资料 OOP with Java Java 类型 引用 不可变类型 对象存储位置 作用域 OOP
More information文档 3
1 2 3 4 5 6 / A B A B B A 7 8 9 10 11 12 OO A B A B 13 14 15 16 17 18 19 20 21 22 OOA OOA 23 24 25 OOA OOA 26 27 28 29 30 31 32 use case 33 use case 34 35 36 37 OOD OOA OOD 38 OOA 39 OOD 40 41 / 42 OOD
More informationMicrosoft PowerPoint - 04-Inheritance.ppt
继承 派生与多态性 1 本章主要内容 类的继承与派生 类成员的访问控制 简单继承与多重继承 派生类的构造 析构函数 多态性 2 1 类的继承与派生 保持已有类的特性, 并在其基础上产生新的类, 称新类继承了已有类的特征, 或称已有类派生出新类 被继承的已有类称为基类 ( 或父类 ) 派生出的新类称为派生类 派生类将自动继承基类的所有特性 ( 属性和方法 ) 派生类可以定义新的特性 ( 属性和方法 )
More informationC C C The Most Beautiful Language and Most Dangerous Language in the Programming World! C 2 C C C 4 C 40 30 10 Project 30 C Project 3 60 Project 40
C C trio@seu.edu.cn C C C C The Most Beautiful Language and Most Dangerous Language in the Programming World! C 2 C C C 4 C 40 30 10 Project 30 C Project 3 60 Project 40 Week3 C Week5 Week5 Memory & Pointer
More information在挑选合适的 SDK 的时候需要注意, 标准 windows 平台应用选择 FBX SDK VS2015,windows 应用商店和全平台通用的不用考虑 windows 全平台通用的应用是 windows10 新推出的功能, 可以打通 windows phone windows s
FBX SDK 安装配置 访问 FBX 网址 :http://www.autodesk.com/products/fbx/overview, 如下 : 点击 GET FBX SDK 进入 SDK 下载页面 ( 网址为 : http://usa.autodesk.com/adsk/servlet/pc/item?siteid=123112&id=25408427): 在挑选合适的 SDK 的时候需要注意,
More informationMicrosoft PowerPoint - CPP-Ch Print.ppt [兼容模式]
Chapter 17 File Processing http://jssec.seu.edu.cn 杨明 yangming2002@seu.edu.cn OBJECTIVES To create, read, write and update files. Sequential file processing. Random-access file processing. To use high-performance
More information基于ECO的UML模型驱动的数据库应用开发1.doc
ECO UML () Object RDBMS Mapping.Net Framework Java C# RAD DataSetOleDbConnection DataGrod RAD Client/Server RAD RAD DataReader["Spell"].ToString() AObj.XXX bug sql UML OR Mapping RAD Lazy load round trip
More informationPowerPoint Presentation
TOEFL Practice Online User Guide Revised September 2009 In This Guide General Tips for Using TOEFL Practice Online Directions for New Users Directions for Returning Users 2 General Tips To use TOEFL Practice
More informationImportant Notice SUNPLUS TECHNOLOGY CO. reserves the right to change this documentation without prior notice. Information provided by SUNPLUS TECHNOLO
Car DVD New GUI IR Flow User Manual V0.1 Jan 25, 2008 19, Innovation First Road Science Park Hsin-Chu Taiwan 300 R.O.C. Tel: 886-3-578-6005 Fax: 886-3-578-4418 Web: www.sunplus.com Important Notice SUNPLUS
More informationD C 93 2
D9223468 3C 93 2 Java Java -- Java UML Java API UML MVC Eclipse API JavadocUML Omendo PSPPersonal Software Programming [6] 56 8 2587 56% Java 1 epaper(2005 ) Java C C (function) C (reusability) eat(chess1,
More informationMicrosoft Word - 97.01.30軟體設計第二部份範例試題_C++_ _1_.doc
電 腦 軟 體 設 計 乙 級 技 術 士 技 能 檢 定 術 科 測 試 範 例 試 題 (C++) 試 題 編 號 :11900-920201-4 審 定 日 期 : 94 年 7 月 1 日 修 訂 日 期 : 96 年 2 月 1 日 97 年 1 月 30 日 ( 第 二 部 份 ) 電 腦 軟 體 設 計 乙 級 技 術 士 技 能 檢 定 術 科 測 試 應 檢 參 考 資 料 壹 試
More informationRunPC2_.doc
PowerBuilder 8 (5) PowerBuilder Client/Server Jaguar Server Jaguar Server Connection Cache Thin Client Internet Connection Pooling EAServer Connection Cache Connection Cache Connection Cache Connection
More information4. 每 组 学 生 将 写 有 习 语 和 含 义 的 两 组 卡 片 分 别 洗 牌, 将 顺 序 打 乱, 然 后 将 两 组 卡 片 反 面 朝 上 置 于 课 桌 上 5. 学 生 依 次 从 两 组 卡 片 中 各 抽 取 一 张, 展 示 给 小 组 成 员, 并 大 声 朗 读 卡
Tips of the Week 课 堂 上 的 英 语 习 语 教 学 ( 二 ) 2015-04-19 吴 倩 MarriottCHEI 大 家 好! 欢 迎 来 到 Tips of the Week! 这 周 我 想 和 老 师 们 分 享 另 外 两 个 课 堂 上 可 以 开 展 的 英 语 习 语 教 学 活 动 其 中 一 个 活 动 是 一 个 充 满 趣 味 的 游 戏, 另 外
More informationNOWOER.OM m/n m/=n m/n m%=n m%n m%=n m%n m/=n 4. enum string x1, x2, x3=10, x4, x5, x; 函数外部问 x 等于什么? 随机值 5. unsigned char *p1; unsigned long *p
NOWOER.OM /++ 程师能 评估. 单项选择题 1. 下 描述正确的是 int *p1 = new int[10]; int *p2 = new int[10](); p1 和 p2 申请的空间 的值都是随机值 p1 和 p2 申请的空间 的值都已经初始化 p1 申请的空间 的值是随机值,p2 申请的空间 的值已经初始化 p1 申请的空间 的值已经初始化,p2 申请的空间 的值是随机值 2.
More informationOOP with Java 通知 Project 4: 5 月 2 日晚 9 点
OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 5 月 2 日晚 9 点 复习 Java 包 创建包 : package 语句, 包结构与目录结构一致 使用包 : import restaurant/ - people/ - Cook.class - Waiter.class - tools/ - Fork.class - Table.class
More informationOOP with Java 通知 Project 4: 推迟至 4 月 25 日晚 9 点
OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 推迟至 4 月 25 日晚 9 点 复习 Protected 可以被子类 / 同一包中的类访问, 不能被其他类访问 弱化的 private 同时赋予 package access class MyType { public int i; public double d; public
More information软件工程文档编制
实训抽象类 一 实训目标 掌握抽象类的定义 使用 掌握运行时多态 二 知识点 抽象类的语法格式如下 : public abstract class ClassName abstract void 方法名称 ( 参数 ); // 非抽象方法的实现代码 在使用抽象类时需要注意如下几点 : 1 抽象类不能被实例化, 实例化的工作应该交由它的子类来完成 2 抽象方法必须由子类来进行重写 3 只要包含一个抽象方法的抽象类,
More information全国计算机技术与软件专业技术资格(水平)考试
全 国 计 算 机 技 术 与 软 件 专 业 技 术 资 格 ( 水 平 ) 考 试 2008 年 上 半 年 程 序 员 下 午 试 卷 ( 考 试 时 间 14:00~16:30 共 150 分 钟 ) 试 题 一 ( 共 15 分 ) 阅 读 以 下 说 明 和 流 程 图, 填 补 流 程 图 中 的 空 缺 (1)~(9), 将 解 答 填 入 答 题 纸 的 对 应 栏 内 [ 说 明
More informationMicrosoft Word - PHP7Ch01.docx
PHP 01 1-6 PHP PHP HTML HTML PHP CSSJavaScript PHP PHP 1-6-1 PHP HTML PHP HTML 1. Notepad++ \ch01\hello.php 01: 02: 03: 04: 05: PHP 06:
More informationchp6.ppt
Java 软 件 设 计 基 础 6. 异 常 处 理 编 程 时 会 遇 到 如 下 三 种 错 误 : 语 法 错 误 (syntax error) 没 有 遵 循 语 言 的 规 则, 出 现 语 法 格 式 上 的 错 误, 可 被 编 译 器 发 现 并 易 于 纠 正 ; 逻 辑 错 误 (logic error) 即 我 们 常 说 的 bug, 意 指 编 写 的 代 码 在 执 行
More informationRUN_PC連載_10_.doc
PowerBuilder 8 (10) Jaguar CTS ASP Jaguar CTS PowerDynamo Jaguar CTS Microsoft ASP (Active Server Pages) ASP Jaguar CTS ASP Jaguar CTS ASP Jaguar CTS ASP Jaguar CTS ASP Jaguar CTS ASP Jaguar Server ASP
More informationuntitled
1 7 7.1 7.2 7.3 7.4 7.5 2 7.1 VFT virtual 7.1 3 1 1. 2. public protected public 3. VFT 4. this const volatile 4 2 5. ( ) ( ) 7.1 6. no-static virtual 7.2 7. inline 7.3 5 3 8. this this 9. ( ) ( ) delete
More informationebook55-13
1 3 C + + C C + + 13.1 X 256 C + + p r i v a t e p u b l i c p e r m u t e () X X Y 13.2 Y Y X 13 257 Y X Y X X m a i n () s i z e o f ( Y s i z e o f ( X ) p u b l i c p r i v a t e p u b l i c p r i
More information课题调查对象:
1 大 陆 地 方 政 府 大 文 化 管 理 职 能 与 机 构 整 合 模 式 比 较 研 究 武 汉 大 学 陈 世 香 [ 内 容 摘 要 ] 迄 今 为 止, 大 陆 地 方 政 府 文 化 管 理 体 制 改 革 已 经 由 试 点 改 革 进 入 到 全 面 推 行 阶 段 本 文 主 要 通 过 结 合 典 型 调 查 法 与 比 较 研 究 方 法, 对 已 经 进 行 了 政 府
More informationMicrosoft PowerPoint - 07 派生数据类型
能源与动力工程学院 目录 派生类型 陈 斌 固有数据类型 数值型 (numerical) 整型 INTEGER 实型 REAL 复数型 COMPLEX 非数值型 字符型 CHARACTER 逻辑型 ( 布尔型 )LOGICAL 自定义数据类型 ( 派生类型, derived type) 派生类型是指用户利用 Fortran 系统内部类型, 如整型 实型 复数型 逻辑型 字符型等的组合自行创建出一个新的数据类型,
More informationCC213
: (Ken-Yi Lee), E-mail: feis.tw@gmail.com 49 [P.51] C/C++ [P.52] [P.53] [P.55] (int) [P.57] (float/double) [P.58] printf scanf [P.59] [P.61] ( / ) [P.62] (char) [P.65] : +-*/% [P.67] : = [P.68] : ,
More informationChapter 1 What is Programing Paradigm 1
An Introduction to Programing Paradigm Chase Zhang May 8, 2013 Chapter 1 What is Programing Paradigm 1 CHAPTER 1. WHAT IS PROGRAMING PARADIGM 2 Definition from Wikipedia 1. Object-oriented programming/
More informationMicrosoft PowerPoint - 3. 函数Functionl.ppt [兼容模式]
函数 Function 如何重用代码 How to reuse code 3 4 = 3*3*3*3 3 4,6 5 : 拷贝 - 粘帖代码 (Copy-paste code) 3 4,6 5,12 10 : 拷贝 - 粘帖代码 (Copy-paste code) Bad! 使用函数 (with a function) 使用函数 (with a function) 使用函数 (with a function)
More information幻灯片 1
第四课类和对象 ( 构造深入 ) 互联网新技术在线教育领航者 1 内容概述 1. 数据成员指针 2. 成员函数指针 3. 三 / 五法则 4. 引用计数 5. 写时拷贝 6.swap 函数 7. 移动构造函数 8. 移动赋值运算符重载 9. 对象移动 10.std::vector 动态增长 11.std::vector 与移动 12. 移动小结 互联网新技术在线教育领航者 2 数据成员指针 定义 :
More informationSDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基
开放数据处理服务 ODPS SDK SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基础功能的主体接口, 搜索关键词 "odpssdk-core" 一些
More informationch_code_infoaccess
地 產 代 理 監 管 局 公 開 資 料 守 則 2014 年 5 月 目 錄 引 言 第 1 部 段 數 適 用 範 圍 1.1-1.2 監 管 局 部 門 1.1 紀 律 研 訊 1.2 提 供 資 料 1.3-1.6 按 慣 例 公 布 或 供 查 閱 的 資 料 1.3-1.4 應 要 求 提 供 的 資 料 1.5 法 定 義 務 及 限 制 1.6 程 序 1.7-1.19 公 開 資
More informationuntitled
1 Outline 料 類 說 Tang, Shih-Hsuan 2006/07/26 ~ 2006/09/02 六 PM 7:00 ~ 9:30 聯 ives.net@gmail.com www.csie.ntu.edu.tw/~r93057/aspnet134 度 C# 力 度 C# Web SQL 料 DataGrid DataList 參 ASP.NET 1.0 C# 例 ASP.NET 立
More information四川省普通高等学校
四 川 省 普 通 高 等 学 校 计 算 机 应 用 知 识 和 能 力 等 级 考 试 考 试 大 纲 (2013 年 试 行 版 ) 四 川 省 教 育 厅 计 算 机 等 级 考 试 中 心 2013 年 1 月 目 录 一 级 考 试 大 纲 1 二 级 考 试 大 纲 6 程 序 设 计 公 共 基 础 知 识 6 BASIC 语 言 程 序 设 计 (Visual Basic) 9
More informationchap07.key
#include void two(); void three(); int main() printf("i'm in main.\n"); two(); return 0; void two() printf("i'm in two.\n"); three(); void three() printf("i'm in three.\n"); void, int 标识符逗号分隔,
More information3.1 num = 3 ch = 'C' 2
Java 1 3.1 num = 3 ch = 'C' 2 final 3.1 final : final final double PI=3.1415926; 3 3.2 4 int 3.2 (long int) (int) (short int) (byte) short sum; // sum 5 3.2 Java int long num=32967359818l; C:\java\app3_2.java:6:
More information論法院作成出版品禁止發行之衡量標準
論 法 院 作 成 出 版 品 禁 止 發 行 裁 定 之 衡 量 標 準 - 以 日 本 實 務 及 學 說 討 論 為 中 心 - A Study on the Stardard of Issuing a Preliminary Injunction -Comparative with the Japanese Practice and Theory- 詹 融 潔 Jung-Chieh Chan
More informationA.doc
A CopyRight: 2003, Mahler Works C > 1.1 C (5 min) 1.1.1C 1.1.21998 ANSIAmerican National Standards InsituteISO International Standards Organzation 1.1.3C/C++C C 1.1.4 C JAVA PLATFORM C 1.2 (5 min)
More information<4D6963726F736F667420506F776572506F696E74202D20C8EDBCFEBCDCB9B9CAA6D1D0D0DEBDB2D7F92E707074>
软 件 架 构 师 研 修 讲 座 胡 协 刚 软 件 架 构 师 UML/RUP 专 家 szjinco@public.szptt.net.cn 中 国 软 件 架 构 师 网 东 软 培 训 中 心 小 故 事 : 七 人 分 粥 当 前 软 件 团 队 的 开 发 现 状 和 面 临 的 问 题 软 件 项 目 的 特 点 解 决 之 道 : 从 瀑 布 模 型 到 迭 代 模 型 解 决 项
More informationAN INTRODUCTION TO PHYSICAL COMPUTING USING ARDUINO, GRASSHOPPER, AND FIREFLY (CHINESE EDITION ) INTERACTIVE PROTOTYPING
AN INTRODUCTION TO PHYSICAL COMPUTING USING ARDUINO, GRASSHOPPER, AND FIREFLY (CHINESE EDITION ) INTERACTIVE PROTOTYPING 前言 - Andrew Payne 目录 1 2 Firefly Basics 3 COMPONENT TOOLBOX 目录 4 RESOURCES 致谢
More information1 1 大概思路 创建 WebAPI 创建 CrossMainController 并编写 Nuget 安装 microsoft.aspnet.webapi.cors 跨域设置路由 编写 Jquery EasyUI 界面 运行效果 2 创建 WebAPI 创建 WebAPI, 新建 -> 项目 ->
目录 1 大概思路... 1 2 创建 WebAPI... 1 3 创建 CrossMainController 并编写... 1 4 Nuget 安装 microsoft.aspnet.webapi.cors... 4 5 跨域设置路由... 4 6 编写 Jquery EasyUI 界面... 5 7 运行效果... 7 8 总结... 7 1 1 大概思路 创建 WebAPI 创建 CrossMainController
More information穨control.PDF
TCP congestion control yhmiu Outline Congestion control algorithms Purpose of RFC2581 Purpose of RFC2582 TCP SS-DR 1998 TCP Extensions RFC1072 1988 SACK RFC2018 1996 FACK 1996 Rate-Halving 1997 OldTahoe
More informationels0xu_zh_nf_v8.book Page Wednesday, June, 009 9:5 AM ELS-0/0C.8
els0xu_zh_nf_v8.book Page Wednesday, June, 009 9:5 AM ELS-0/0C.8 Yamaha ELS-0/0C..8 LCD ELS-0/0C v. typeu LCD ELS-0/0C typeu / -6 / [SEARCH] / - ZH ELS-0/0C.8 els0xu_zh_nf_v8.book Page Wednesday, June,
More informationuntitled
Ogre Rendering System http://antsam.blogone.net AntsamCGD@hotmail.com geometry systemmaterial systemshader systemrendering system API API DirectX OpenGL API Pipeline Abstraction API Pipeline Pipeline configurationpipeline
More informationGuide to Install SATA Hard Disks
SATA RAID 1. SATA. 2 1.1 SATA. 2 1.2 SATA 2 2. RAID (RAID 0 / RAID 1 / JBOD).. 4 2.1 RAID. 4 2.2 RAID 5 2.3 RAID 0 6 2.4 RAID 1.. 10 2.5 JBOD.. 16 3. Windows 2000 / Windows XP 20 1. SATA 1.1 SATA Serial
More informationMicrosoft PowerPoint - 5. 指针Pointers.ppt [兼容模式]
指针 Pointers 变量指针与指针变量 Pointer of a variable 变量与内存 (Variables and Memory) 当你声明一个变量时, 计算机将给该变量一个内存, 可以存储变量的值 当你使用变量时, 计算机将做两步操作 : - 根据变量名查找其对应的地址 ; - 通过地址对该地址的变量内容进行读 (retrieve) 或写 (set) 变量的地址称为变量的指针! C++
More informationOOP with Java 通知 Project 4: 5 月 2 日晚 9 点
OOP with Java Yuanbin Wu cs@ecnu OOP with Java 通知 Project 4: 5 月 2 日晚 9 点 复习 Protected 可以被子类 / 同一包中的类访问, 不能被其他类访问 弱化的 private 同时赋予 package access class MyType { public int i; public double d; public char
More information提纲 1 2 OS Examples for 3
第 4 章 Threads2( 线程 2) 中国科学技术大学计算机学院 October 28, 2009 提纲 1 2 OS Examples for 3 Outline 1 2 OS Examples for 3 Windows XP Threads I An Windows XP application runs as a seperate process, and each process may
More information投影片 1
資料庫管理程式 ( 補充教材 -Part2) 使用 ADO.NET 連結資料庫 ( 自行撰寫程式碼 以實現新增 刪除 修改等功能 ) Private Sub InsertButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles InsertButton.Click ' 宣告相關的 Connection
More informationA Study on JI Xiaolan s (1724-1805) Life, Couplets and Theories of Couplets 紀 曉 嵐 (1724 1724-1805 1805) 生 平 資 料 斠 正 及 對 聯 聯 論 研 究 LI Ha 李 夏 THE UNIVER
Title A study on Ji Xiaolan's (1724-1805) life, couplets and theories of couplets = Ji Xiaolan (1724-1805) sheng ping zi liao jiao zheng ji dui lian, lian lun yan jiu Author(s) Li, Ha; 李 夏 Citation Li,
More information