vc范例大全

 

vc范例大全

范例1,派生类基类的学习。

定义两个基类CDateType,和CTimeType类。然后一个派生类,CDateTimeType派上这两个类

class CDataTimeType:public CDateType,public CTimeType

在基类CDateType和CTimeType中分别定义构造函数和成员函数display()

然后定义派生类的成员函数为调用两个基类中的display函数

 void display()
 {
  CDateType::display();
  CTimeType::display();
 }

则 ,定义一个派生类对象并直接初始化 CDataTimeType dt(1,1,2008,11,12,12);

再调用display函数,则输出的是当前构造函数初始化的参数1,1,2008,11,12,12

再调用基类中两个函数

dt.SetDate(8,8,2008);
 dt.SetTime(20,8,8);

然后在dt.display(),

jieguo wei : 8/8/2008

                         20:8:8

 

范例2:使用虚函数实现运行时多态

   基类中定义一个成员函数,并设置关键字为虚函数virtual,然后在派生类中,可以重写覆盖虚函数。注意派生类中的虚函数与基类中的一定返回值,参数形式都相同。

再实例化一个基类指针,一个派生类对象,然后该指针指向对象。

不同派生类调用不同虚函数。显示结果。

注意:编程代码一定要仔细。函数后面有括号(),定义要有大括号{}。类没有括号,指针指向对象,应该是figure=&circul.

 

范例3 使用操作符重载实现编译多态;复数的加法运算

operator关键字代表对运算符的重载。编译时的多态就是指编译器对源程序进行编译时就可以确定所调用的是哪个函数。

复数的加法重载。

1.定义一个复数类,并做实体部虚部函数定义

2.类中声明一个重载运算符

3.类外定义重载运算符。(重载运算符的参数最多有一个。 )

4.正常的运算符使用c3=c1+c2

 

 

范例4 。使用函数模版实现不同数据类型的极值函数

就是按照一个模版,不同的参数类型,产生相应的代码。

关键字 template<class ..> class不能丢。

template <class T>  //定义函数模版

T Min(T a,T b,T c)    //实现模版函数

..注意:字符串string可以这样定义 string str1("one"),str2("two").. 头文件是 string.h

     多用三目运算符 return b<c?b:c

 

范例5 使用c++实现格式化数据的io

常见的是字体敲入:请输入单价:25.8 这样子的编程。

这里学习了使用流操作符来控制输出。cout.width(5)控制了显示的宽度,cout.fill('*')控制了显示的内容。

注意,头文件是 iomanip.h

cout.width(5);
 cout.fill('*');

cout.setf(ios::scientific);  //setf函数可以设置状态标志  状态标志使用时候必须加ios::
 cout.precision(3);
 cout<<price*counts<<"(销售额)"<<endl;
 cout.setf(ios::showpos|ios::left);    //showpos,显示正数的时候加+,left 是显示时候左对齐

 

范例6实现数字金额的中文大写转换

设置一个对话框,输入中文123,转换后输出壹贰叁

原理:定义单位,个拾佰千万十万百万千万亿十亿百亿千亿。。。

然后读取输入的小写数字如452176中的第一位4,再判断位数,如果是万位之后,要加单位万,否则加亿,否则加整。

最后输出。

注意:cstring类后有好多函数, format,trimleft,getlength。值得学习

 

范例7 将十进制数转化为二进制数

过程:递归算法。binary(number),

  用一个运算符 >>,右移相当于/2, 第一次789,%2的余数为第一项,然后右移相当于除以2,变为394,再调用一次binary,依次递归。

这样层层穷经,则最初运算计算的是最低端的数,得到余数reminder,依次转化为二进制

注意:右移运算符的含义,以及递归的用法

 

实例8:产生随机数

重点:srand 产生随机数种子,一般是  srand((unsigned)time(NULL)),以时间作为种子

           产生随机数,限定范围,rand()%400,代表范围从0到399   rand()%400+60,代表从60到399. rand()%10代表从0到9,rand()%10*0.1代表从0到0.9

 

范例9:实现排序操作

  冒泡排序:

插入排序:从第二位元素开始,后一位依次与前面的位相比较,找到第一个比他小的,就排在这个数后面。s[j]=s[j-1],j--

快速排序:

选择排序:

 

范例10:创建文本文件并进行读写操作

文本文件的写入,保存,读取。 我应该多练习一些c语言实现的教程。

 

范例11:用迭代公式求a的平方根。迭代公示为 x1=(x0+a/x0)/2;

  则先设置一个初值x=a/2,然后建立一个dowhile循环,限定条件是(fabs(x1-x2)>=le-5);。

 

范例12,输入一段文本,统计文本的行数 ,单词数目以及字符数目。假定文本没有空行

分析:统计行数:挨个读取字符,当读到一个换行符时候,\n,则代表一行结束。nline++

            统计字符:挨个读取字符, 当读到的不是空,不是换行符,不是制表符,不是文本结束符时候,即字符,nch++

           统计单词数目:当读到字符时,单词开始,再读到第一个不是字符时候,代表读到一个单词,nword++

三个循环,最外层限定条件是读到字符结束符EOF,再里层循环是读到一个字符,再内层循环是读到的字符时候正在读单词

问题:设置文本结束符号是EOF,说对应的键盘按键应该是CTRL+Z,可是我按了没反应,回车再ctrl+z还是没反应。查了资料说是vc6.0不稳定的原因推荐从vs说。可是我还是喜欢vc。因为我是菜鸟

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
实例2-1:演示C++程序的运行步骤。源代码在光盘中“\02\firstcpp”目录下。 实例2-2:Visual C++语言基本元素介绍。源代码在光盘中“\02\secondcpp”目录下。 实例2-3:cout流控制符setw的使用。源代码在光盘中“\02\thirdcpp”目录下。 实例2-4:增加域内填充字符。源代码在光盘中“\02\fourthcpp”目录下。 实例2-5:同一数据用不同进制输出结果。源代码在光盘中“\02\fifthcpp”目录下。 实例2-6:用浮点数的形式输出数据。源代码在光盘中“\02\sixthcpp”目录下。 实例2-7:数据的输入及输出。源代码在光盘中“\02\seventhcpp”目录下。 实例2-8:计算学生平均成绩。源代码在光盘中“\02\eighthcpp”目录下。 实例2-9:函数的调用。源代码在光盘中“\02\ninthcpp”目录下。 实例2-10:用指针传递参数。源代码在光盘中“\02\tenthcpp”目录下。 实例2-11:全局变量和局部变量。源代码在光盘中“\02\eleventhcpp”目录下。 实例2-12:使用指针注意内存的分配。源代码在光盘中“\02\twelfthcpp”目录下。 实例2-13:引用实例。源代码在光盘中“\02\thirteencpp”目录下。 实例2-14:虚函数的使用实例。源代码在光盘中“\02\fourteencpp”目录下。 。。。。。。 实例13-1:动态链接库(Dll)实例。源代码在光盘中“\13\dlltest ”目录下。 实例13-2:鼠标钩子应用实例。源代码在光盘中“\13\MouseHook”目录下。 实例13-3:键盘钩子应用实例。源代码在光盘中“\13\KeyboardHook”目录下。 实例14-1:WinSock网络程序:聊天室。源代码在光盘中“\14\WinSocketChat”目录下。 实例14-2:利用MSComm控件进行串口数据传输。源代码在光盘中“\14\MSComm”目录下。 实例14-3:简单的WinInet应用程序。源代码在光盘中“\14\SimpleNet”目录下。 实例15-1:创建Access数据库。源代码在光盘的“\15\Info”中。 实例15-2:MFC的ODBC数据库实例。源代码在光盘中“\15\Enroll”目录下。 实例15-3:利用ADO查询并操作数据库实例。源代码在光盘中“\15\AdoTest”目录下。
相关网站 7 设置窗口最大最小 7 设置窗口标题 7 去掉主菜单 7 修改应用程序图标 7 系统只能允许一个程序运行 7 在状态栏中添加时间 8 研究调用存储过程 8 得到本机的IP地址 9 vc调用chm文件 10 最高窗口的实现 10 防止Edit框中的Password不保密 11 在同一系统中显示GB字符和BIG5字符 12 改变颜色(整个窗体的控件) 13 改变工程表头栏 13 ◆如何找开一个DiaLog的窗口◆ 13 ◆得到系统中设置的窗口颜色◆ 14 ◆如何让点下去的菜单成为V状态◆ 14 ◆如何调用WINDOWS的颜色板◆ 14 ◆如何产生一个MDI的主窗口◆ 15 ◆如何让一个文本控件显示出值◆ 15 ◆如何让一个控件显示出相应的值◆ 16 ◆在调试中怎么样MESSAGEBOX一个数字◆ 16 ◆如何控制控件的焦点◆ 16 ◆如何对析构函数中对象进行释放◆ 16 ◆如何关闭一个模态窗口◆ 17 ◆如何将一个提示的声音发到声卡上◆ 17 ◆如何得到打开exe的带的参数◆ 17 ◆如何在框架上建立一个工具条◆ 17 ◆如何生成一个主窗口下方的状态条◆ 18 ◆如何让Cscrollview类中控制其可以流动区域大小◆ 19 ◆MFC中控件的一些基本控制方法◆ 19 ◆如何让一个数字型变量化为字符型变量◆ 19 ◆如何使用“拉动条”,“上下选择”◆ 19 ◆如何使用postmessage来异步触发某事件◆ 21 ◆如何使用Sendmessage来异步触发某事件◆ 22 ◆如何修改父类的相关控件属性◆ 22 ◆如何在程序中得到控件的名◆ 22 ◆如何控制菜单的事件程序◆ 22 ◆如何使用控件中的数据录入的控制属性◆ 23 ◆哪些函数是文档、视图相互处理用的◆ 23 ◆如何建立一个基于对话框一程序◆ 23 ◆如何建立一个线程◆ 24 ◆如何让窗口产生一个图标(从应用程序资源中取出)◆ 24 ◆如何得到一个edit的录入的值◆ 24 ◆如何启动TIMER事件◆ 25 ◆如何使用ctrllist控件实现表格◆ 25 ◆如何从INI文件中得到值◆ 25 ◆如何将图标文件写到窗口中◆ 26 ◆如何得到本机的IP地址◆ 26 ◆如何使用全局变量◆ 26 ◆如何让一个字符加上回车、换行◆ 26 ◆如何定义、使用结构◆ 26 ◆如何在任意程序中显示MessageBox◆ 27 ◆如何在程序判断出debug状态◆ 27 ◆当对话框中有一个滚动条是,当滚动滚动条时的消息控制函数◆ 27 ◆将一个CWnd指针转换成一个控件ID(整数)注意用GetDlgItem()函数是从一个控件ID转换成一个CWnd的指针◆ 28 ◆如果在对话框中自定义一个消息的方法,假设对话框名为CXX◆ 28 ◆消息传递◆ 29 ◆在一个函数引用另外的一个对话框◆ 29 ◆全局函数的申明问题◆ 29 ◆在应用程序中*APP.CPP中的InitInstance()的事件◆ 29 ◆给执行文件加一个图标◆ 30 ◆如何在全局函数中通过传入的窗口句柄操作窗口◆ 30 ◆如何使桌面文字背景透明?◆ 30 ◆怎样才能在VC里产生一个唯一的字符串◆ 31 ◆如何隐藏进程(在系统状态栏和进程列表里不可见)◆ 31 ◆如何得到一个确定大小的视?◆ 31 ◆如何实现点击窗口任意地方拖动窗口?◆ 32 ◆如何在启动时阻止MDI应用程序创建一个新文档?◆ 33 ◆如何在多文档MFC程序中制作独立的File|New菜单?◆ 33 ◆如何检测视是否处于分割状态?◆ 34 ◆如何使程序保持极小状态?◆ 34 ◆如何确定当前进程实例是否为唯一实例?◆ 35 ◆如何向一个文档附加多个视?◆ 35 ◆如何获得文件的图标、属性、大小、类型等参数?◆ 36 ◆如何得到鼠标下面的窗口?◆ 37 ◆设置鼠标的形状◆ 38 ◆在对话框中设置编辑EDIT的值◆ 38 1. 如何获取应用程序的实例句柄? 38 2. 如何通过代码获得应用程序主窗口的指针? 38 3. 如何在程序中获得其他程序的图标? 38 4. 如何编程结束应用程序?如何编程控制windows的重新引导? 39 5.怎样加载其他的应用程序? 39 6. 确定应用程序的路径 39 7. 获得各种目录信息 40 8. 如何自定义消息 40 9. 如何改变窗口的图标? 40 10. 如何改变窗口的 缺省风格? 40 11. 如何将窗口居中显示? 41 12. 如何让窗口和 MDI窗口一启动就最大化和最小化? 41 13. 如何使程序保持极小状态? 41 14. 如何限制窗口的 大小? 41 15. 如何使窗口不可见? 41 16. 如何使窗口始终在最前方? 41 17、如何创建一个字回绕的CEditView 42 18、通用控件的显示窗口 42 19、移动

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值