注册 登录
编程论坛 C++教室

C++拆分

jszjvictor 发布于 2013-01-17 23:16, 615 次点击
请教大家,一个比较大的C++程序,怎么拆分成一个主程序和几个子程序,运行主程序就能运行其他的子程序,主程序中的头文件和调用子程序的语句分别是什么
11 回复
#2
赤血之魂2013-01-17 23:26
kankan
#3
TonyDeng2013-01-17 23:29
挺深奥的问题
#4
peach54602013-01-18 08:21
太深奥了...
#5
wp2319572013-01-18 08:46
如果是拆分成N个模块 就没啥可说的了

如果是拆分成N个文件  还没玩过呢
#6
锋了2013-01-18 13:03
你意思用住函数包含含有子函数的头文件么,还是一个文件里把程序分成子函数和主函数而已?
#7
jszjvictor2013-01-19 22:11
回复 6楼 锋了
是一个主文件里面只有函数调用语句,然后每一个被调用的函数单独放一个文件,运行主文件即可运行整个程序

[ 本帖最后由 jszjvictor 于 2013-1-19 22:12 编辑 ]
#8
jszjvictor2013-01-19 22:12
回复 5楼 wp231957
是一个主文件里面只有函数调用语句,然后每一个被调用的函数单独放一个文件,运行主文件即可运行整个程序
#9
wp2319572013-01-20 08:36
程序代码:
#include<stdio.h>

#define PI 3.14

//计算4/3*PI的值
double func1()
{
    return double(4.0/3.0*PI);
}
//计算半径的立方
double func2(double r)
{
    return double(r*r*r);
}
//计算球体体积
double func3(double c1,double c2)
{
    return double(c1*c2);
}
//输出打印语句
void func4(double r,double v)
{
    printf("半径为%.2f的球体的体积为%.2lf\n",r,v);
}
int main()
{
    double r=5.0;
    double c1=func1();
    double c2=func2(r);
    double v=func3(c1,c2);
    func4(r,v);
    return 0;
}
举个简单例子

实际上 求球体积 一句代码就够了 不需要写N个函数

实际中的函数应用要考虑是否需要单独写函数  单独写几个函数 等等
#10
锋了2013-01-20 12:34
回复 7楼 jszjvictor
你把子函数的声明保存做一个头文件,如:Fun.h,然后再主函数main.cpp里包含这个头文件#include"fun.h"
这样就可以了如
//Fun.h 头文件
#include<iostream>
using namespace std;
void display(int const &a[],int const n)
{
  for(int i=0;i<N;i++)
     cou<<a[i]<<endl;
}

//main.cpp  主函数
#include<iostram>
#include"Fun.h"
using namespace std;

const int N=3;
int main()
{
  int a[N];
   for(int i=0;i<N;i++)
        a[i]=i+1;
   display(a,N);  //调用头文件里的函数
   return 0;
}
#11
jszjvictor2013-01-20 21:58
回复 9楼 wp231957
谢谢!
#12
jszjvictor2013-01-20 21:59
回复 10楼 锋了
谢谢!基本了解了,我去试试看
1