MFC学习笔记2--C++的重要性质
来源:互联网 发布:mac sacd 编辑:程序博客网 时间:2024/06/04 23:21
封装(encapsulation):类及其成员:属性,方法。
继承(Inheritance):基类(base class),派生类(derived class)
this指针
虚函数与多态(Polymorphism)
Object slicing与虚函数
静态成员(变量与函数)
构造函数与析构函数
四种不同的对象生成方式(in stack,int heap,global,local static)
1.在堆栈中产生一个对象:
2.在堆(heap)中产生一个对象:
3.产生一个全局变量(同时也必然是一个静态变量):
CFoo foo;
4.产生一个局部静态变量:
运行是类型识别(RTTI)
宏 DECLARE_DYNAMIC, IMPLEMENT_DYNAMIC
类 CRuntimeClass
动态创建(Dynamic Creation)
RAM
术语Serialize:做有关文件读写的永久保存操作,并且实现一个虚拟函数,就叫做Serialize.
宏 DECLARE_DYNCREATE, IMPLEMANT_DYNCREATE
类 CRuntimeClass
异常处理(Exception Handling)
C++导入了三个新的exception保留字:
1.try。之后跟随一段以{}圈出来的程序代码,exception可能在其中发生。
2.catch。之后跟随一段以{}全出来的程序代码,那是exception处理例程之所在。catch应该紧跟在try之后。
3.throw。这是一个指令,用来产生(丢出)一个exception。
MFC以下列宏仿真C++ exception handling:
TRY
CATCH(type,object)
AND_CATCH(type,object)
END_CATCH
CATCH_ALL(object)
AND_CATCH_ALL(object)
END_CATCH_ALL
END_TRY
THROW()
THROW_LAST()
THROW参数类型 对应 AfxThrow_函数
Template
C++中的template有两种,分别针对function和class。
Template Function:
Template Classes:
继承(Inheritance):基类(base class),派生类(derived class)
this指针
虚函数与多态(Polymorphism)
Object slicing与虚函数
静态成员(变量与函数)
构造函数与析构函数
四种不同的对象生成方式(in stack,int heap,global,local static)
1.在堆栈中产生一个对象:
void MyFunc() {CFoo foo;...}
2.在堆(heap)中产生一个对象:
void MyFunc() {...CFoo* pFoo = new CFOO();}
3.产生一个全局变量(同时也必然是一个静态变量):
CFoo foo;
4.产生一个局部静态变量:
void MyFunc() {static CFoo foo;...}
运行是类型识别(RTTI)
宏 DECLARE_DYNAMIC, IMPLEMENT_DYNAMIC
类 CRuntimeClass
动态创建(Dynamic Creation)
RAM
术语Serialize:做有关文件读写的永久保存操作,并且实现一个虚拟函数,就叫做Serialize.
宏 DECLARE_DYNCREATE, IMPLEMANT_DYNCREATE
类 CRuntimeClass
异常处理(Exception Handling)
C++导入了三个新的exception保留字:
1.try。之后跟随一段以{}圈出来的程序代码,exception可能在其中发生。
2.catch。之后跟随一段以{}全出来的程序代码,那是exception处理例程之所在。catch应该紧跟在try之后。
3.throw。这是一个指令,用来产生(丢出)一个exception。
MFC以下列宏仿真C++ exception handling:
TRY
CATCH(type,object)
AND_CATCH(type,object)
END_CATCH
CATCH_ALL(object)
AND_CATCH_ALL(object)
END_CATCH_ALL
END_TRY
THROW()
THROW_LAST()
THROW参数类型 对应 AfxThrow_函数
Template
C++中的template有两种,分别针对function和class。
Template Function:
template <class T>T power(T base, int exception)
Template Classes:
template <class T>class CThree {public:CThree(T t1,T t2,T t3);T Min();T max();private:T a , b , c;};
1 0
- MFC学习笔记2--C++的重要性质
- 深入浅出MFC学习笔记:(第一章:win32基本概念,第二章:C++的重要性质)
- 深入浅出MFC学习笔记:(第一章:win32基本概念,第二章:C++的重要性质)
- 二、C++ 的重要性质 (学习笔记)
- 学习笔记之深入浅出MFC 第8章 C++重要性质-----类封装
- 学习笔记之深入浅出MFC 第8章 C++重要性质---异常处理(Exception Handing)
- 学习笔记之深入浅出MFC 第8章 C++重要性质---Template
- 学习笔记之深入浅出MFC 第8章 C++重要性质----基类与派生类:谈继承(Inheritance)
- 学习笔记之深入浅出MFC 第8章 C++重要性质----虚拟函数与多态(Polymorphism)
- 学习笔记之深入浅出MFC 第8章 C++重要性质---构造函数与析构函数
- 学习笔记之深入浅出MFC 第8章 C++重要性质--- 执行期类型信息(RTTI)
- 2.C++的重要性质(深入浅出MFC之读书笔记)
- c++的重要性质
- C++的重要性质!
- C++的重要性质!
- 图的重要性质
- CSS的重要性质
- C++重要性质2!
- “Hardcoded string "xxx", should use @string resource”警告
- C++ 中类型转换 xmlChar * 与Char * 转换,Char *与int 转换,Char *与Float转换,int 与portNumBits转换
- Android开发-----02-ListView中给某些条目进行倒计时
- 文章链接汇总
- 点击按钮切换图片
- MFC学习笔记2--C++的重要性质
- 探索Scala(5)-- 基本类型
- 移动控制文件数据文件日志文件
- “Nested weights are bad for performance”警告
- Android存取txt
- Hive总结(九)Hive体系结构
- 《英雄联盟》支撑最高750万同时在线用户的聊天服务打造
- C++11 lambda 表达式解析
- 比较两个数的大小,要求不能用if,<,>,?