Linux下C++编程-进度条

引言:本篇主要在linux下的C++实现进度条的功能。按照多文件编程,同时使用Makefile文件完成多文件的编译、连接。

首先创建头文件:

1. progress.h

#pragma once
#include 
#include 
#include 
#include 
using namespace std;
class Prog{
public:
  Prog(int time,const string sample);
  void get_progress();
private:
  int _time;
  string _sample;
};

 首先定义一个Prog的类,成员变量为进度条需要多少秒和进度条样式。并声明构造函数和创建进度条的函数。

2. progress.cpp 

#include "progress.h"
Prog::Prog(int time,const string sample)
  :_time(5)
  ,_sample("#")
{
  _time = time;
  _sample = sample;
}
void Prog::get_progress(){
  int cont = 100; //进度为100%
  char arry[101]; //要放一个'\0'
  string s = "|/"; //进度条最后价格旋转动效
  memset(arry,'\0',101); //把arry中的全部置为'\0'
  for(int i = 0; i

 实现构造函数,初始化列表,如果创建对象时,不传值,默认为5秒完成,样式为#。

3. main.cpp 

#include "progress.h" 
int main()
{
  Prog p1(3,"#");
  p1.get_progress();
  return 0;
}

 这样这个进度条功能已经实现,但是每次如果要编译就要:

g++ main.cpp progress.cpp

这时候就要使用Makefile了,这是一个文件, 我们需要在Makefile文件中描述了整个工程所有文件的编译顺序、编译规则。

4. Makefile

prog : main.cpp progress.cpp
	g++ main.cpp progress.cpp -o prog

 格式为:

target : dependency

(Tab)rule

目标文件 :依赖项

(Tab键)规则

 5. 实现效果

你可能感兴趣的:(C++,linux,c++,linux,开发语言)