C++类和对象的一个简单的实例
题目:找出一个整形数组中的元素的最大值
下面,我们用类和对象的方法来做。
#include<iostream>
using namespace std;
class Array_max{
private://声明在类的外部不可访问的隐私成员
int array[10];
int max;
public://声明在类的外部可以访问的开放的成员函数
void set_value(){
int i;
cout<<"请输入10个整数"<<endl;
for(i=0;i<10;i++){
cin>>array[i];
}
};
void max_value(){
int i;
max=array[0];
for(i=1;i<10;i++){
if(array[i]>max)
max=array[i];
}
};
void show_value(){
cout<<"max is :"<<max<<endl;
};
};
int main(){
Array_max array1;
array1.set_value();//初始化操作
array1.max_value();//求最大数的操作
array1.show_value();//输出最大的数
return 0;
}
当然,我们还可以将成员函数在类体外进行声明:
#include<iostream>
using namespace std;
class Array_max{
private://声明在类的外部不可访问的隐私成员
int array[10];
int max;
public://声明在类的外部可以访问的开放的成员函数
void set_value();//声明函数的原型
void max_value();
void show_value();
};
void Array_max::set_value(){//::是成员限定符,限定函数属于哪一个类
int i;
cout<<"请输入10个整数"<<endl;
for(i=0;i<10;i++){
cin>>array[i];
}
}
void Array_max::max_value(){
int i;
max=array[0];
for(i=1;i<10;i++){
if(array[i]>max)
max=array[i];
}
}
void Array_max::show_value(){
cout<<"max is :"<<max<<endl;
}
int main(){
Array_max array1;
array1.set_value();//初始化操作
array1.max_value();//求最大数的操作
array1.show_value();//输出最大的数
return 0;
}
在类的外部进行定义函数的时候,需要先在类中,对函数原型进行声明
=============================================================
在实际的应用中,更常用的是将函数的声明单独放到一个文件中。
class_dec.cpp
#include<iostream>
using namespace std;
class Array_max{
private://声明在类的外部不可访问的隐私成员
int array[10];
int max;
public://声明在类的外部可以访问的开放的成员函数
<span style="white-space:pre"> </span>void set_value();//声明函数的原型
<span style="white-space:pre"> </span>void max_value();
<span style="white-space:pre"> </span>void show_value();
};
class_fun.cpp
#include "class_dec.cpp"
void Array_max::set_value(){//::是成员限定符,限定函数属于哪一个类
int i;
cout<<"请输入10个整数"<<endl;
for(i=0;i<10;i++){
cin>>array[i];
}
}
void Array_max::max_value(){
int i;
max=array[0];
for(i=1;i<10;i++){
if(array[i]>max)
max=array[i];
}
}
void Array_max::show_value(){
cout<<"max is :"<<max<<endl;
}
main.cpp
#include "class_fun.cpp"
int main(){
Array_max array1;
array1.set_value();//初始化操作
array1.max_value();//求最大数的操作
array1.show_value();//输出最大的数
return 0;
}
C++类和对象的一个简单的实例的更多相关文章
- C语言入门教程: 一个简单的实例
对于学习要保持敬畏! 语言不只是一种工具,还是一种资源,因此,善待它,掌握它! 我们知道,对于未知通常都会充满好奇和畏惧,既想了解它,又害怕神秘面纱隐藏的不确定性.对于一门编程语言同样如此,我将以 ...
- 大话JS面向对象之扩展篇 面向对象与面向过程之间的博弈论(OO Vs 过程)------(一个简单的实例引发的沉思)
一,总体概要 1,笔者浅谈 我是从学习Java编程开始接触OOP(面向对象编程),刚开始使用Java编写程序的时候感觉很别扭(面向对象式编程因为引入了类.对象.实例等概念,非常贴合人类对于世间万物的认 ...
- 原生Ajax用法——一个简单的实例
Ajax全名(Asynchronous(异步) JavaScript and XML )是可以实现局部刷新的 在讲AJax之前我们先用简单的实例说一下同步和异步这个概念 /*异步的概念(就是当领导有一 ...
- 爬虫基础以及一个简单的实例(requests,re)
最近在看爬虫方面的知识,看到崔庆才所著的<Python3网络爬虫开发实战>一书讲的比较系统,果断入手学习.下面根据书中的内容,简单总结一下爬虫的基础知识,并且实际练习一下.详细内容请见:h ...
- Django学习 之 Django安装与一个简单的实例认识
一.Django简介 1.MVC与MTV模型 (1)MVC模型 Web服务器开发领域里著名的MVC模式,所谓MVC就是把Web应用分为模型(M),控制器(C)和视图(V)三层,他们之间以一种插件式的. ...
- c++类的基本形式(一个简单类的简单sample,命名空间)
有人把类说成是占用固定大小内存块的别名,其定义时不占用空间 #include<iostream> #include<string> using namespace std; c ...
- c++有关构造函数、析构函数和类的组合的一个简单例子
来源链接 实验四(下) 代码 #include <iostream> using namespace std; enum CPU_Rank {P1 = 1, P2, P3, P4, P5, ...
- php 类与对象 面向对象编程 简单例子
<?php class Foo { //类 名称为Foo public $aMemberVar = 'aMemberVar Member Variable'; //类变量 public $aFu ...
- python类与对象-如何为创建大量实例节省内存
如何为创建大量实例节省内存 问题举例 在网络游戏中,定义玩家类Player(id, name, level...), 每个玩家在线将创建一个Player实例,当在线人数很多时,将产生大量实例, 如何降 ...
随机推荐
- oc中的blocks的功能,一种比代理简洁的方式
blocks方式: 谁要东西谁就要写blocks,通过blocks(返回值)获取想要的,提供东西的人要通过实现函数指针把东西给想要的人.当然也可以传值,传值需要通过形参. block的功能: bloc ...
- 经典c语言题
1. 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题) #define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL 2. 写一个“标 ...
- finally return 执行关系 异常处理 c#
Return.finally执行关系简述 除了函数出现system.exit(0)终止虚拟机,finally中的代码一定执行,return语句会等待finally的执行:如果是值传递,finally中 ...
- 【leetcode刷题笔记】Spiral Matrix
Given a matrix of m x n elements (m rows, n columns), return all elements of the matrix in spiral or ...
- Android系统OTA升级包制作【转】
本文转载自:http://blog.csdn.net/dingfengnupt88/article/details/52882788 Android系统升级分为整包升级和差分包升级,整包升级就是将系统 ...
- Android 蓝牙实例【转】
本文转自:http://www.yiibai.com/android/android_bluetooth.html 在很多方面,蓝牙是一种能够发送或接受两个不同的设备之间传输的数据. Android平 ...
- Source not found The source attachment does not contain the source for the file MethodBeforeAdvice.class
- 机器学习(二十三)— L0、L1、L2正则化区别
1.概念 L0正则化的值是模型参数中非零参数的个数. L1正则化表示各个参数绝对值之和. L2正则化标识各个参数的平方的和的开方值. 2.问题 1)实现参数的稀疏有什么好处吗? 一个好处是可以简化 ...
- GUI创建各常用控件(一)
首先,作个申明: 1.这是一个野路子非科班的小菜鸟的学习,故诚心欢迎批评指正(同时所述内容可能有误): 2.本人目前使用的Unity3D版本为 5.3.5: 言归正传! 事实上在开发过程中已经很少用G ...
- Python中如何开发一个注册接口小实例
import flask from flask import request #想获取到请求参数的话,就得用这个 server = flask.Flask(__name__) #吧这个python文件 ...