C++ ios类的 flags(long)ios cos 函数用法的用法

它用于初始化流的内部标志和成员变量的值。
派生类期望在其首次使用之前或销毁之前(通常在构建期间)在某个时间调用此受保护成员函数。
内部状态以这样的方式初始化:这些成员中的每一个返回以下值 -
goodbit/ badbit
exceptions
skipws / dec
‘ ‘ (空格)
类似locale()
以下是ios::init函数的声明。
protected: void init (streambuf* sb);
sb - 指向streambuf对象的指针。
加QQ群啦!
JAVA技术群(2000人群):
MySQL/SQL群(2000人群):
Python技术群(2000人群):
大数据开发群(2000人群): (Java,Python,R,Scala,Hadoop,Spark,zookeeper,kafka等技术)
Web开发群(新群):
(PHP,HTML/HTML5,JS/JQuery,CSS等技术)
Linux技术群(新群): (Redhat/Centos,Ubuntu,Shell,运维,监控等技术)
易百教程移动端:请扫描本页面底部(右侧)二维码关注微信公众号,或直接手机访问:
上一篇:下一篇: 上传我的文档
 下载
 收藏
该文档贡献者很忙,什么也没留下。
 下载此文档
正在努力加载中...
面向对象程序设计与Visual C++ 6.0教程
陈天华 著课件 第9章
下载积分:1500
内容提示:面向对象程序设计与Visual C++ 6.0教程
陈天华 著课件 第9章
文档格式:PPT|
浏览次数:19|
上传日期: 14:58:40|
文档星级:
全文阅读已结束,如果下载本文需要使用
 1500 积分
下载此文档
该用户还上传了这些文档
面向对象程序设计与Visual C++ 6.0教程
陈天华 著课
关注微信公众号中国领先的IT技术网站
51CTO旗下网站
详解Objective-C中静态变量使用方法
在Objective-C中如何实现像C++中那样的静态成员变量呢?你需要做的是在一个类A的implementation(.m或者.mm)文件中定义一个static变量,然后为A类定义静态成员函数(class method,也就是类方法)来操作该变量。
作者:佚名来源:互联网| 17:16
Objective-C中静态变量使用方法是本文要介绍的内容,Objective-C 支持全局变量,主要有两种实现方式:第一种和C/C++中的一样,使用&extern&关键词;另外一种就是使用单例实现。(比如我们经常会把一个变量放在AppDelegate里面作为全局变量来访问,其中AppDelegate就是一个单例类)
在Objective-C中如何实现像C++中那样的静态成员变量呢?
你需要做的是在一个类A的implementation(.m或者.mm)文件中定义一个static变量,然后为A类定义静态成员函数(class method,也就是类方法)来操作该变量。这样在其它类中你就不需要创建A类的实例来对static变量进行访问。虽然该static变量并不是A类的静态成员变量,但是也算达到了同样的效果。static变量的作用域被限制在单一的文件中。代码可以如下所示:
//example.h&&& &@interface&Example&:&NSObject&{&& &&& &}&& &&& &-&(id)&& &+(int)instanceC&& &&& &@end&& &&& &//example.m&&& &#import&&example.h&&&& &&& &static&int&&& &&& &@implementation&Example&& &-(id)init{&& &self&=&[super&init];&& &if(nil!=self){&& &count+=1;&& &}&& &return&&& &}&& &&& &+(int)instanceCount{&& &return&&& &}&& &&& &@end&& &//example.h &@interface&Example&:&NSObject&{ &&} &&-&(id) &+(int)instanceC &&@end &&&//example.m &#import&&example.h& &&static&int& &&@implementation&Example &-(id)init{ &self&=&[super&init]; &if(nil!=self){ &count+=1; &} &return& &} &&+(int)instanceCount{ &return& &} &@end&
上面的例子中你就可以通过[Example instanceCount]对静态变量count进行访问,无须创建实例。
小结:详解Objective-C中静态变量使用方法的内容介绍完了,希望通过本文的学习对你有所帮助【编辑推荐】【责任编辑: TEL:(010)】
大家都在看猜你喜欢
热点热点热点关注聚焦
24H热文一周话题本月最赞
讲师:51287人学习过
讲师:119859人学习过
讲师:83036人学习过
精选博文论坛热帖下载排行
本书是为北大燕工教育研究院编写的计算机网络技术的学习教材。它以实际教学大纲为依据,全面系统的介绍了计算机网络技术知识,对于一个...
订阅51CTO邮刊我们都知道,平时常用的那些标准流,诸如iostream、ofstream、ifstream等等,其实都是对应的basic_XXX模版的实例类。 而这些basic_XXX类模版又都是继承自同一个基类模版----basic_ios。
2 basic_ios模版
定义这个基类模版应该是出于可重用的目的。
2.1 成员类型
char_type : 字符类型,即第一个模版参数。
char_traits : 萃取器,即第二个模版参数(默认为位于& string &头文件内的char_traits萃取器)。
2.2 构造器
该模版的构造函数只需要两个类型:charT、traits。 一个是字符类型,另一个是字符萃取器,两者都只和字符有关。
2.3 状态标记函数
good : 检测流状态是否为good。
eof : 检测end-of-file 标记位是否被置为1,即是否到文件末尾。
fail : 检测 fail标记位 或者 bad标记位是否被置为1,即先前是否有操作失败。
bad : 检测bad 标记位是否被置为1, 即先前是否有操作导致了严重错误(致使流的完整性遭到破坏)。
operator !、operator bool : 检测流的状态是否正常,即是否有操作失败或导致了严重错误(fail or bad)。
rdstate、setstate : 返回或者设置所有状态标记位。
clear : 清楚状态标记位。
2.4 格式化函数
coptfmt : 将给定的basic_ios对象的内部格式copy给自身。
fill : 返回、设置填充字符(当设定的宽度大于实际输出宽度时,才会出现填充情况)。
2.5 其他函数
exceptions : 返回、设置异常掩码(设置之后,对应的状态标记位被置1时,会抛出异常)。
imbue : 将locale灌输进流,这个调用会触发imbue_event事件。
tie : 返回先前的关联输出流、设置新的关联输出流。"The tied stream is an output stream object which is flushed before each i/o operation in this stream object." 也就是说,每次自身的输入输出操作发生前,该tied的流都回把缓冲区的内容输出。 默认情况下,标准cin和cerr流与cout相关连,所以每次在键盘输入时,“黑框”都回把输入显示出来。
rdbuf : 返回、设置basic_ios内部的stream buffer。
narrow : 将传入字符(通常是宽字符)窄化(narrow)成自身模版类的char_type类型字符。
widen : 将传入字符宽化(widen)成自身模版类的char_type类型字符(通常是宽字符)。
3 ios_base类
这个类很特殊,它是basic_ios类模版的基类,并且它的构造函数是私有的。 这就意味着它在设计之初就是内部使用,只用于派生,不能被用户声明使用。
3.1 格式化函数
flags : 返回或者重新设置所有格式标记符。
setf : 设置特定类别的格式标记符。
unsetf : 清除特定的格式标记符。
precision : 设置浮点数精度。
width : 设置域宽。
3.2 本地化函数
imbue : “灌入”区域设置。
getloc : 返回当前区域设置。
3.3 有关internal array的函数
该类内部维护了一个internal extensible array作为通用数组,并且定义了三个公有函数帮助用户使用它们。
xalloc(静态) : 返回一个extensible array的新下标。
iword : 返回数组中对应给定下标的long元素。
pword : 返回数组中给定下标对应的元素指针(void*)。
3.4 事件支持
ios_base支持事件这一概念,但只支持有限的事件。
3.4.1 event枚举类
copyfmt_event : 当调用copyfmt时发生。
erase_event : 当stream的析构器被调用时。
imbue_event : 当调用ios_base::imbue时。
3.4.2 event_callback类型
ios_base以回调函数的形式来支持事件。 回调函数必须满足以下类型void (*event_callback) (event en, ios_base& obj, int index); 其中obj是触发事件的stream对象,index是注册回调函数时的传入的index参数。
3.4.3 注册事件回调函数
register_callback
3.5.1 其他函数
sync_with_stdio(静态) : 是否同步C++输入输出流和C输入输出对象(stdin、stdout、stderr)。
3.5.2 其他成员类型
fmtflags : 流格式化标记符类型。
iostate : 流状态标记符类型。
openmode : 流打开模式标记符类型。
seekdir : 流定位方向标记符类型。
3.5.3 其他成员类
failure : 继承自std::exception的异常类,用来作为输入输出流的基本异常类。
Init : 八个标准流实例化的控制器。
4 Error Reporting
该头文件也提供了一定的错误处理功能。
4.1 io_errc 枚举类
这个枚举类定义了input/output 的错误情况。 C++标准只要求该枚举类定义stream枚举,但具体的库可以自己实现额外的枚举。
4.2 make_error_code函数
该函数从给定的io_errc枚举构建出错误码(error_code对象)。
4.3 make_error_condition函数
该函数从给定的io_errc枚举构建出错误情况(error_condition对象)。
4.4 iostream_category函数
返回一个error_category对象,该对象类型与io_errc枚举类对应的error_condition的错误类别相关联。
5 Manipulators(全局函数)
boolalpha : 将bool变量字符化(包括输入输出),即1-&true,0-&false。
showbase : 输出时,显示数字的前置基数,即十六进制-&0x, 八进制-&0, 十进制无前置基数。
showpoint : 显示浮点数的小数点。
showpos : 显示正整数的“+”号。
skipws : 跳过所有前置的white-space。
unitbuf : 每次向流插入内容时,输出缓冲区的内容。
uppercase : 所有小写字母都用大写替代。
dec、hex、oct : 分别用十进制、十六进制、八进制来表示整数。
fixed、scientific : 分别用固定点小数法、科学计数法来表示浮点数。
internal、left、right : 分别使数字居中、左对齐、右对齐,其中居中时会根据情况适当的插入填充字符。
阅读(...) 评论()2013年 总版技术专家分年内排行榜第三
2012年 总版技术专家分年内排行榜第七
2015年8月 C/C++大版内专家分月排行榜第三2015年5月 C/C++大版内专家分月排行榜第三2015年3月 C/C++大版内专家分月排行榜第三2015年1月 C/C++大版内专家分月排行榜第三
2013年 总版技术专家分年内排行榜第三
2012年 总版技术专家分年内排行榜第七
2013年 总版技术专家分年内排行榜第三
2012年 总版技术专家分年内排行榜第七
本帖子已过去太久远了,不再提供回复功能。

我要回帖

更多关于 ios cos 函数用法 的文章

 

随机推荐