chapter 3 学习
来源:互联网 发布:php输出菱形 编辑:程序博客网 时间:2024/05/01 22:19
Chapter 3
今天晚上学习了第三章,因为很多是C语言的复习,所以看得也不是太仔细,但是还是有不少新的知识点,之前不是很注意的。
<-> Union 类型的特性
#include<iostream>
using namespace std;
union Packed
{
char i;
short j;
int k;
long l;
float f;
double d;
};
int main()
{
cout<<"sizeof(Packed)= "<<sizeof(Packed)<<endl;
Packed x;
x.k=1;
x.d=12.1;
cout<<x.d<<endl;
}
Union类型的大小由最大的那个成员决定,上面的由double决定,所以在我的机子上显示为8.
并且x的数值只能存在一个成员的值,新的复制会淹没原来的成员的值。
<二>enum类型
#include<iostream>
#include<string>
using namespace std;
enum shapeType{
circle,
square,
rectangle,
none
};
shapeType f(string& s)
{
switch(s[0])
{
case 'c': return circle;break;
case 's':return square;break;
case 'r':return rectangle;break;
default:return none;break;
}
}
int main()
{
string s;
while(true)
{
cin>>s;
switch(f(s))
{
case circle: cout<<"it's a circle"<<endl;break;
case square: cout<<"it's a square"<<endl;break;
case rectangle:cout<<"it's a rectangle"<<endl;break;
default:break;
}
if(f(s)==none)break;
}
}
<三>static_cast、const_cast
可以看出const_cast虽然可以使一个指针指向一个const对象,但是却无法通过该指针改变原对象的值。
<四>assert
assert(statement)
当statement不成立的时候报错
<五> 函数指针
上面这个程序的例子,非常好,可以学习到,怎么#define 和怎么使用函数指针。
今天就到这里了,学习了3章,准备每天三章,在5天之内学习完这本书,加油!
- chapter 3 学习
- Chapter 3 决策树学习
- 基于《机器学习》学习整理- chapter 3
- Python 编程学习 chapter 3 变量
- 《大话数据结构》学习笔记--chapter 3
- Chapter 3
- chapter 3
- chapter 3
- Chapter 3
- Chapter 3
- chapter 3
- Chapter 3
- Chapter 3
- Chapter 3
- Chapter 3
- Chapter 3
- Chapter 1-2学习
- Matlab学习 Chapter 6
- Ogre:Hardwarebuffer
- C学习笔记 11 指针的减法
- Jbpm4.4集成SSH
- 湖师大ACM校赛总结
- 感谢所有必须感谢的...
- chapter 3 学习
- 向着第二层 第一阶段第二天
- SQL附加数据库时出现了错误602,提示“对sysindexes运行DBCC CHECKTABLE” 的解决办法
- C++内嵌代码使用压缩的方法(compress和uncompress函数)需要有zlib,编译时加-lz
- 娱人节快乐
- 2011-4-1
- Hibernate的优缺点
- jquery解析XML文件
- 一个月不关注技术,专心搞研究,写论文