题目:找出一个整形数组中的元素的最大值

下面,我们用类和对象的方法来做。

#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++类和对象的一个简单的实例的更多相关文章

  1. C语言入门教程: 一个简单的实例

    对于学习要保持敬畏! 语言不只是一种工具,还是一种资源,因此,善待它,掌握它!   我们知道,对于未知通常都会充满好奇和畏惧,既想了解它,又害怕神秘面纱隐藏的不确定性.对于一门编程语言同样如此,我将以 ...

  2. 大话JS面向对象之扩展篇 面向对象与面向过程之间的博弈论(OO Vs 过程)------(一个简单的实例引发的沉思)

    一,总体概要 1,笔者浅谈 我是从学习Java编程开始接触OOP(面向对象编程),刚开始使用Java编写程序的时候感觉很别扭(面向对象式编程因为引入了类.对象.实例等概念,非常贴合人类对于世间万物的认 ...

  3. 原生Ajax用法——一个简单的实例

    Ajax全名(Asynchronous(异步) JavaScript and XML )是可以实现局部刷新的 在讲AJax之前我们先用简单的实例说一下同步和异步这个概念 /*异步的概念(就是当领导有一 ...

  4. 爬虫基础以及一个简单的实例(requests,re)

    最近在看爬虫方面的知识,看到崔庆才所著的<Python3网络爬虫开发实战>一书讲的比较系统,果断入手学习.下面根据书中的内容,简单总结一下爬虫的基础知识,并且实际练习一下.详细内容请见:h ...

  5. Django学习 之 Django安装与一个简单的实例认识

    一.Django简介 1.MVC与MTV模型 (1)MVC模型 Web服务器开发领域里著名的MVC模式,所谓MVC就是把Web应用分为模型(M),控制器(C)和视图(V)三层,他们之间以一种插件式的. ...

  6. c++类的基本形式(一个简单类的简单sample,命名空间)

    有人把类说成是占用固定大小内存块的别名,其定义时不占用空间 #include<iostream> #include<string> using namespace std; c ...

  7. c++有关构造函数、析构函数和类的组合的一个简单例子

    来源链接 实验四(下) 代码 #include <iostream> using namespace std; enum CPU_Rank {P1 = 1, P2, P3, P4, P5, ...

  8. php 类与对象 面向对象编程 简单例子

    <?php class Foo { //类 名称为Foo public $aMemberVar = 'aMemberVar Member Variable'; //类变量 public $aFu ...

  9. python类与对象-如何为创建大量实例节省内存

    如何为创建大量实例节省内存 问题举例 在网络游戏中,定义玩家类Player(id, name, level...), 每个玩家在线将创建一个Player实例,当在线人数很多时,将产生大量实例, 如何降 ...

随机推荐

  1. oc中的blocks的功能,一种比代理简洁的方式

    blocks方式: 谁要东西谁就要写blocks,通过blocks(返回值)获取想要的,提供东西的人要通过实现函数指针把东西给想要的人.当然也可以传值,传值需要通过形参. block的功能: bloc ...

  2. 经典c语言题

    1. 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题) #define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL 2. 写一个“标 ...

  3. finally return 执行关系 异常处理 c#

    Return.finally执行关系简述 除了函数出现system.exit(0)终止虚拟机,finally中的代码一定执行,return语句会等待finally的执行:如果是值传递,finally中 ...

  4. 【leetcode刷题笔记】Spiral Matrix

    Given a matrix of m x n elements (m rows, n columns), return all elements of the matrix in spiral or ...

  5. Android系统OTA升级包制作【转】

    本文转载自:http://blog.csdn.net/dingfengnupt88/article/details/52882788 Android系统升级分为整包升级和差分包升级,整包升级就是将系统 ...

  6. Android 蓝牙实例【转】

    本文转自:http://www.yiibai.com/android/android_bluetooth.html 在很多方面,蓝牙是一种能够发送或接受两个不同的设备之间传输的数据. Android平 ...

  7. Source not found The source attachment does not contain the source for the file MethodBeforeAdvice.class

  8. 机器学习(二十三)— L0、L1、L2正则化区别

    1.概念  L0正则化的值是模型参数中非零参数的个数. L1正则化表示各个参数绝对值之和. L2正则化标识各个参数的平方的和的开方值. 2.问题  1)实现参数的稀疏有什么好处吗? 一个好处是可以简化 ...

  9. GUI创建各常用控件(一)

    首先,作个申明: 1.这是一个野路子非科班的小菜鸟的学习,故诚心欢迎批评指正(同时所述内容可能有误): 2.本人目前使用的Unity3D版本为 5.3.5: 言归正传! 事实上在开发过程中已经很少用G ...

  10. Python中如何开发一个注册接口小实例

    import flask from flask import request #想获取到请求参数的话,就得用这个 server = flask.Flask(__name__) #吧这个python文件 ...