Linux下使用make构建一个C++工程项目

Linux下使用make构建一个C++工程项目

编译环境与工具
Ubuntu 16.04
g++
make

一 编辑C++程序

程序实例:写一个整型的坐标点类point,然后在主程序中创建三个坐标点类的对象,并放入容器vector中,通过调用坐标点类point中的成员函数point::print()来输出每一个点的坐标。该程序一个包含三个文件:

main.cpp
point.cpp
point.h

(1)创建一个C++工程项目目录

  新建一个名为“Point”的目录
mkdir Point

(2)编辑三个C++文件
进入./Point目录并使用编辑三个C++文件

point.h

class point{
    
    
private:
        int x;
        int y;
public:
        point(int a,int b):x(a),y(b){
    
    }
        void print();
        ~point(){
    
    }
};

point.cpp

#include <iostream>
#include "point.h"

void point::print(){
    
    
        std::cout<<"x="<<this->x<<",y="<<this->y<<"\n";
}

main.cpp

#include <iostream>
#include <vector>
#include "point.h"
using namespace std;

int main(){
    
    

        point p0(3,4);//创建三个point对象
        point p1(1,2);
        point p2(5,8);

        vector<point> v;//创建一个存储point对象的容器

        v.push_back(p0);
        v.push_back(p1);
        v.push_back(p2);

        for(int i=0;i<v.size();i++)//打印容器中的所有point对象
                v[i].print();

        return 0;
}

二 构建C++ 工程项目

(1) 编辑Makefile文件

cd ./Point
mkdir Makefile

Makefile 文件内容

all:
	g++ main.cpp point.cpp -o main -std=c++11
clean:

(2) 使用命令make构建C++工程项目

cd ./Point
make
./main

在这里插入图片描述
(3) 问题
在这里插入图片描述

Makefile:2: *** missing separator.  Stop.

解决方法
在g++ main.cpp point.cpp -o main -std=c++11前面用TAB键,而不是空格空格空格….

猜你喜欢

转载自blog.csdn.net/zhngyue123/article/details/107758435