首页
Web开发
Windows程序
编程语言
数据库
移动开发
系统相关
微信
其他好文
会员
首页
>
编程语言
> 详细
c++自学笔记第五次
时间:
2015-02-19 13:59:46
阅读:
194
评论:
0
收藏:
0
[点我收藏+]
标签:
代码重用是现代程序设计追求的一个重要目标,模板有效地软件重用。模板和异常处理都是c++的重要机制。利用模板可以大大缩短了程序的长度。
#include<iostream>
using namespace std;
template<class T>
class A{
T x;
T y;
public:
A(T a,T b){
x=a;
y=b;
}
void display(){
cout<<x<<"+"<<y<<"i"<<endl;
}
};
int main(){
A<int>a1(2,3);
A<double>a2(4.3,5.3);
a1.display();
a2.display();
return 0;
}
函数模板
#include<iostream>
using namespace std;
template<class T>
T sum(T a,T b){ //加法模板
return a+b;
}
int isum(int a,int b){ //整数加法
return a+b;
}
float fsum(float a,float b){ // 实数加法
return a+b;
}
int main(){
cout<<"isum(2,3)="<<isum(2,3)<<endl;
cout<<"fsum(3.5,4.12)="<<fsum(3.5,4.1)<<endl;
cout<<"sum(2,3)="<<sum(2,3)<<endl;
cout<<"sum(3.5,4.12)="<<sum(3.5,4.1)<<endl;
return 0;
}
sum其实相当于若干个函数的组合,对于不同的参数类型,sum可以返回不同的结果
异常处理是c++的一个特点,它能够检测到程序运行错误后终止程序,并按照指定的方法对错误进行处理,当异常被处理完之后,程序又开始运行。
#include<iostream>
using namespace std;
class YC{};
int main(){
double a,b,c;
cin>>a>>b>>c;
try{
if(c==0)
throw YC();
cout<<a<<"+"<<b<<"/"<<c<<"="<<a+b/c<<endl;
}
catch(YC){
cout<<"除数不可以为0 "<<endl;
}
return 0;
}
#include<iostream>
using namespace std;
class YC1{};
class YC2{};
int main(){
int a,b;
cin>>a>>b;
try{
if(a*b<10)
throw YC1();
else if(a*b>100)
throw YC2();
cout<<"该矩形的面积为 "<<a*b<<"平方米"<<endl;
}
catch(YC1){
cout<<"面积不可以小于10"<<endl;
}
catch(YC2){
cout<<"面积不可以大于100"<<endl;
}
return 0;
}
多少种情况就抛出多少个异常
文件
#include<iostream>
#include<fstream>
using namespace std;
int main(){
ofstream ofile("11111.txt"); //以文本形式打开文件
if(!ofile)
cerr<<"打开文件错误"<<endl;
else{ //开始写入操作
ofile<<"姓名\t"<<"年龄\t"<<"性别\t"<<endl;
ofile<<"赵易\t"<<"21\t"<<"男\t"<<endl;
ofile<<"杜帅\t"<<"20\t"<<"男\t"<<endl;
ofile<<"赵彤彤\t"<<"20\t"<<"女\t"<<endl;
}
return 0;
}
#include<iostream>
#include<fstream>
using namespace std;
int main(){
ofstream ofile;
ifstream ifile;
char buf1[30],buf2[30];
ofile.open("11111.txt");//打开文件。写入
ofile<<"hello 彤彤";
ofile<<"I Love You";
ofile.close();//关闭文件
ifile.open("11111.txt"); //打开文件,进行读操作
ifile.getline(buf1,30);
ifile.getline(buf2,30);
cout<<buf1<<endl;
cout<<buf2<<endl;
return 0;
}
<<endl,在文件读取过程中,这个会读到文件中去。
c++自学笔记第五次
标签:
原文地址:http://blog.csdn.net/lotluck/article/details/43882625
踩
(
0
)
赞
(
0
)
举报
评论
一句话评论(
0
)
登录后才能评论!
分享档案
更多>
2021年07月29日 (22)
2021年07月28日 (40)
2021年07月27日 (32)
2021年07月26日 (79)
2021年07月23日 (29)
2021年07月22日 (30)
2021年07月21日 (42)
2021年07月20日 (16)
2021年07月19日 (90)
2021年07月16日 (35)
周排行
更多
Spring Cloud 从入门到精通(一)Nacos 服务中心初探
2021-07-29
基础的排序算法
2021-07-29
SpringBoot|常用配置介绍
2021-07-29
关于 .NET 与 JAVA 在 JIT 编译上的一些差异
2021-07-29
C语言常用函数-toupper()将字符转换为大写英文字母函数
2021-07-29
《手把手教你》系列技巧篇(十)-java+ selenium自动化测试-元素定位大法之By class name(详细教程)
2021-07-28
4-1 YAML配置文件 注入 JavaBean中
2021-07-28
【python】 用来将对象持久化的 pickle 模块
2021-07-28
马拉车算法
2021-07-28
用Python进行冒泡排序
2021-07-28
友情链接
兰亭集智
国之画
百度统计
站长统计
阿里云
chrome插件
新版天听网
关于我们
-
联系我们
-
留言反馈
© 2014
mamicode.com
版权所有 联系我们:gaon5@hotmail.com
迷上了代码!