目前为止只用到了 ReadString,也了解了一下 WriteString. 由于程序需要,本来程序中是用的CFile, 但是需要逐行读取文件数据,所以谷歌找到了 ReadString 类 —— 继承于CFile,是CFile 的派生类 当使用 WriteString 往文件中存以行为单位的数据时,后面不要加 \r 或 \n,因为你已经告诉程序了,这是一行的数据,它会自动加上行符号.否则,当使用 ReadString 读取以 WriteString 存储的数据时,数据会多出一个 \r . 以下…
两者的主要区别: 一. CFile类操作文件默认的是Binary模式,CStdioFile类操作文件默认的是Text模式.    在Binary模式下我们必须输入'\r\n',才能起到回车换行的效果,'\r'只是回车(回到当前行的第一列),'\n'只是换行(到达下一行的当前列). 而在Text模式下'\r'的工作是自动完成的,当我们写一个'\n'的时候,系统会自动帮我们在其前面加上一个'\r',然后保存到文件里.另外,CFile::typeText只能在CFile的子类中使用,CFile自身的R…
CFile.CStdioFile.FILE和其他文件操作(转+总结) 2010-04-10 20:36:33|  分类: VC++|举报|字号 订阅     下载LOFTER我的照片书  |     CFile//创建/打开文件CFile file;file.Open(_T("test.txt"),CFile::modeCreate|CFile::modeNoTruncate|CFile::modeReadWrite); 文件打开模式可组合使用,用“|”隔开,常用的有以下几种:CFil…
CStdioFile类的声明保存再afx.h头文件中. CStdioFile类继承自CFile类,CStdioFile对象表示一个用运行时的函数fopen打开的c运行时的流式文件.流式文件是被缓冲的,而且可以以文本方式(默认)或者二进制方式打开. CStdioFile类不支持CFile类中的Duplicate.LockRange.UnlockRange函数,如果你使用了,会得到CNotSupportedException类的错误. CStringFile类默认的是按照Text模式操作文件.CFi…
本文转自:http://www.cnblogs.com/JiMuStudio/archive/2011/07/17/2108496.html   CStdioFile类的声明保存再afx.h头文件中. CStdioFile类继承自CFile类,CStdioFile对象表示一个用运行时的函数fopen打开的c运行时的流式文件.流式文件是被缓冲的,而且可以以文本方式(默认)或者二进制方式打开. CStdioFile类不支持CFile类中的Duplicate.LockRange.UnlockRange…
本文转自:http://blog.csdn.net/fanghb_1984/article/details/7425705 本文介绍两种方法对文件进行读取和写入操作:1.采用fstream类:2.采用CStdioFile类. CStdioFile继承自CFile,一个CStdioFile对象代表一个用运行时函数fopen 打开的C 运行时流式文件. C++中的fstream类,所有的I/O都以这个“流”类为基础的,包括我们要认识的文件I/O.stream类有两个重要的运算符:插入器(<<)和析…
一 MFC的概念和作用 1 什么是MFC?? 全称 Microsoft Foundation Class Library我们称之为微软基础类库 1)从硬盘的存在形式上来说 MFC就是一个库(静/动态库) 2)从原理上来说 MFC还是一个程序框架 2 为什么使用MFC?? 基于框架编程提高工作效率,减少开发周期,节约开发成本.二 几个重要的头文件 afx.h - 包含了MFC库中绝大部分类的声明 afxwin.h - 包含了afx.h和windows.h afxext.h - 包含了扩展类的声明…
1. CObject类,MFC库中绝大部分类的基类,封装了MFC中的最基本机制. 运行时类信息机制/动态创建机制/序列化机制等... 2. CCmdtarget - 消息映射机制最基类 3. CWinThread/CWinApp- 应用程序类,负责整个程序的执行流程. 4. CDocment及子类 - 文档类,负责管理数据 5. CDocTemplate以及子类- 文档模板类 CSingleDocTemplate - 单文档模板类.用于创建单文档的视图架构程序 CMutiDocTemplate-…
第二章 重点:1.理解View以及各种布局的优缺点,适用场景. 2.熟练掌握adapter原理与用法. 3.熟悉其它控件的基本使用方法. ////////////////////////////////////////// 1.动态创建与加载View. 2.开发自定义View,由于Android提供的控件类型有限,对于一些应用来说是无法满足的,例如地图的显示,Android并没有提供一个可以显示地图界面的view组件,这时就需要开发者自行的构造一个满足自己需求的view组件,通常view基类是一…
类的问题 继承类的原因:为了添加或者替换功能. 1. 继承时重写类的方法 v 替换功能 ① 将所有方法都设置为virtual(虚函数),以防万一. Virtual:经验表明最好将所有方法都设置为virtual,包括析构函数但不包括构造函数: 这样不必担心重写方法是否运行,这样做唯一的缺点是对性能具有轻微的影响: 即使某个类不大可能被扩展,最好还是将这个类的方法设置为virtual,以防万一. ② 重写方法的语法:在子类定义中重新声明这个方法,并在子类的实现文件中提供新的定义.(注意:方法定义中不…
CStdioFile 类的声明保存在 afx.h 头文件中. CStdioFile 类继承自 CFile 类, CStdioFile 对象表示一个用运行时的函数 fopen 打开的 c 运行时的流式文件.流式文件是被缓冲的,而且可以以文本方式(默认)或者二进制方式打开. CStdioFile 类不支持 CFile 类中的 Duplicate . LockRange . UnlockRange 函数,如果你使用了,会得到 CNotSupportedException 类的错误. CStringFi…
为什么要使用匿名内部类 ①如果以前的类有一些缺陷,只是想在某一个模块进行修复,可以在引用该类的地方使用匿名内部类,在overRide方法进行修复. ②如果一个类,需要派生出很多类,而且这些类大多只是在一个特定模块去使用,是不是没有必要挨个的去创建这些子类呢. 注意事项 ①使用匿名内部类时,我们必须是继承一个类或者实现一个接口,但是两者不可兼得,同时也只能继承一个类或者实现一个接口. ②匿名内部类中是不能定义构造函数的, 只能用现有的父类构造器或者用初始化代码块来进行初始化. ③匿名内部类中不能存…
概述 意图 业务代码中常常有构造对象的过程,它拥有大量的参数.并且有很多地方需要这对象. 简化对象构造过程. 主要解决 一个类在不同场景的频繁地创建,让不同对象的创建更有语义化,提高代码复用性. 何时使用 当您想在不同的业务场景,创建略微不同的对象. 如何解决 通过契约式设计(Design by Contract - DBC)设计原则,通过方法名作为契约. 用不同的方法名,构造不同的对象. 关键代码 相应场景定义相应方法名的构造方法. 使用场景 创建初始状态的普通用户和商户用户. 创建不同的子类…
20172319 2018.04.24-05.03 <Java程序设计教程>第8周学习总结 目录 教材学习内容总结 教材学习中的问题和解决过程 代码调试中的问题和解决过程 代码托管 上周考试错题总结 结对及互评 其他(感悟.思考等,可选) 学习进度条 参考资料 教材学习内容总结 第十章 多态性: 后绑定: 绑定指的是一个方法的调用与方法所在的类(方法主体)关联起来: 在java中,绑定分为静态绑定(前期绑定)和动态绑定(后期绑定): 前期绑定: 在程序执行前方法已经被绑定(也就是说在编译过程中…
MFC 中的设计模式分析 最近在学习设计模式,突然想到MFC里面其实也包含有设计模式的原理,于是分析了一下,做一个笔记,网上也找了一些资料,在此一并感谢. 创建型模式 单例模式(Singleton Pattern)单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例.这个类称为单例类. 任何MFC应用程序的第一步就是创建一个应用程序对象(CWinApp或者其子类的实例).在一个MFC应用程序中只能有一个应用程序对象,而且只有一个获取这个对象的全局入口点(AfxGetApp()…
继承可以解决代码复用,让编程更加靠近人的思维.当多个类存在相同的属性(变量)和方法时,可以从这些类中抽象出父类,在父类中定义这些相同的属性和方法.所有的子类不需要重新定义这些属性和方法,只需要通过extends语句来声明继承父类: class 子类 extends 父类 这样,子类就会自动拥有父类定义的属性和方法. *父类的public修饰符的属性和方法,protected修饰符的属性和方法,默认修饰符的属性和方法被子类继承了,父类的private修饰符的属性和方法不能被子类继承. 注意事项:…
一.代码块 1. 含义: 就是使用大括号括起来的一段代码 格式 { 代码: } 2.静态代码块 格式 static{ 代码: } 书写位置: 直接书写在类中成员位置: 怎么执行呢? 在类加载的最后一步,自动执行: 类加载,会把类的成员加载到方法区,其中非静态成员加载到非静态区域,静态成员加载到静态区域: 静态成员加载的顺序: a.首先加载所有静态成员: b.按顺序给所有静态成员变量赋默认值: c.按顺序给所有静态成员变量显示赋值和执行静态代码块: 执行完静态代码块,类才算加载完成: 为什么创建对…
面向对象三大特征:封装性.继承性.多态性之多态性. extends继承或者implemens实现,是多态性的前提. 例如:小菜是一个学生,但同时也是一个人.小菜是一个对象,这个对象既有学生形态,也有人类形态.一个对象拥有多种形态,这就是:[对象的多态性] 多态的格式与使用 代码当中体现多态性,其实就是一句话:父类引用指向子类对象. 格式: 分类名称 对象名 = new 子类名称(); 或者: 接口名称 对象名 = new 实现类名称(); 访问成员变量的两方式 1.直接通过对象名称访问成员变量:…
继承 1. 继承概述 2. 继承格式 在继承的关系中,"子类就是一个父类".也就是说,子类可以被当做父类看待. 例如父类是员工,子类是讲师,那么"讲师就是一个员工".关系:is-a. 定义父类的格式:(一个普通的类定义) public class 父类名称 { // ... } 定义子类的格式: public class 子类名称 extends 父类名称 { // ... } 3. 继承中成员变量访问特点 在父子类的继承关系当中,如果成员变量重名,则创建子类对象时…
1.两个容易搞混的C盘文件夹 文件名 描述 Progrm Files 默认存储的64位软件 Progrm Files(x86) 默认存储32位软件 2.常用基础DOS命令(Windows+R打开命令) DOS命令 描述 盘符: (C: D: E: ) 打开指定盘 dir 查看当前目录中包含所有的目录以及文件,会显示隐藏文件(数目) cd 跳转到指定位置 cd\ 返回到当前目录的根目录 cls 清空屏幕 ipconfig 查看本机ip地址 exit 退出 Ctrl+c 强行终止程序执行 java…
一直对回调机制不是很了解,今天索性搜了很多资料顺便整理一下,进步一点点. 1.Callback方式(回调函数) 什么是回调函数? 简而言之,回调函数就是一个通过函数指针调用的函数.如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用为调用它所指向的函数时,我们就说这是回调函数. typedef void (__stdcall *DownloadCallback)(const char* pURL, bool bOK); void DownloadFile(const char* p…
网上流传的2点: PHP的构造函数继承必须满足以下条件: 当父类有构造函数的声明时,子类也必须有声明,否则会出错. 在执行父类的构造函数时,必须在子类中引用parent关键字. 第1点不需要. 第二个正确.parent::__construct($param)调用.…
在实际的开发中,往往有很多子类都继承自同一个父类,然后该父类再继承自框架内置类的需求. 比如: class Init extends Controller{...} class son1 extends Init{...} class son2 extends Init{...} .... 若在Init类中,重写了构造函数: public function __construct(){...} 则会发现,子类无法使用框架内置Controller类的一些功能,比如子类中$this->fetch(‘…
1.构造函数:        当子类继承一个父类时,构造子类时需要调用父类的构造函数,存在三种情况        (1),父类无构造函数或者一个无参数构造函数,子类若无构造函数或者有无参数构造函数,子类构造函数中不需要显式调用父类的构造函数,系统会自动在调用子类构造函数前调用父类的构造函数         (2),父类只有有参数构造函数,子类在构造方法中必须要显示调用父类的构造函数,否则编译出错         (3),父类既有无参数构造函数,也有有参构造函数,子类可以不在构造方法中调用父类的构…
前言 Swift已推出数年,与Objective-C相比Swift的语言机制及使用简易程度上更接地气,大大降低了iOS入门门槛.当然这对新入行的童鞋没来讲,的确算是福音,但对于整个iOS编程从业者来讲,真真是,曾几何时“高大上”,转瞬之间“矮矬穷”.再加上培训班横行,批量批发之下,iOS再也看不到当年的辉煌.iOS10推出后,紧跟着Xcode8也推送了更新,细心者会发现,Xcode8下iOS版本最低适配已变为iOS8.0,加上Swift版本趋于稳定,从某种意义上讲,Swift的时代正式开启,替代…
------- android培训.java培训.期待与您交流! ---------- 因为在先前学习java的过程中,有涉及到可变参数,但没有太深入的去学习.所以最近自己找了些相关资料,想加深了解.下面就是学习整理后的内容了. 在JDK1.5后,定义方法时,可以使用同类型个数不确定的参数. 使用可变参数定义方法时,方法实际上是把这些不确定数目的参数隐式地都装进一个数组中, 然后方法再从这个数组中取出元素来使用. 也就是说,方法使用可变参数,和JDK1.4中方法使用数组参数时的处理方式是一样的,…
深入分析PHP优化及注意事项 1.尽量静态化: 如果一个方法能被静态,那就声明它为静态的,速度可提高1/4,甚至我测试的时候,这个提高了近三倍. 当然了,这个测试方法需要在十万级以上次执行,效果才明显. 其实静态方法和非静态方法的效率主要区别在内存:静态方法在程序开始时生成内存,实例方法在程序运行中生成内存,所以静态方法可以直接调用,实例方法要先成生实例,通过实例调用方法,静态速度很快,但是多了会占内存. 任何语言都是对内存和磁盘的操作,至于是否面向对象,只是软件层的问题,底层都是一样的,只是实…
TCHAR* old_locale = _tcsdup( _tsetlocale(LC_CTYPE,NULL) ); _tsetlocale( LC_CTYPE, _T("chs")); CStdioFile oStdFileIS; try { if (!oStdFileIS.Open(TEXT("成语字典byWLS勿用于商业用途.txt"),CFile::modeRead)) { //失败 } } catch (CFileException* e) { //异常…
版本:EF6.0.1 RC 一对多场景,在子对象映射中开启级联删除情况下,删除父对象将自动删除其下所有子对象,需要注意一些事项: 需要保证DbContext中已经加载了该父对象的所有子对象. 如果DbContext内未加载子对象将不级联删除子对象(请看示例代码1), 如DbContext只加载部分子对象也只级联删除这些子对象(遗漏删除未加载的子对象),(请看示例代码2). 因此在查询父对象只应该使用Include("子对象属性名")查询(请看示例代码3)或者在DbContext另外把其…
1. __init__ 注意事项 如果父类有__init__函数,子类没有,则子类自动调用父类__init__函数 如果父类有__init__函数,子类也有,则子类必须主动调用父类__init__函数,否则会报错 class A: def __init__(self): self.name = "A" def PrintName(self): print self.name class B(A): def __init__(self): A.__init__(self) self.__…