Person.h
#include<string>
using namespace std;
class Person{
private:int age;
private:string name;
public:Person(int age, string name);
public:int getAge();
public:string getName();
};
Person.cpp
#include<iostream>
#include<string>
#include"Person.h"
using namespace std;
int Person::getAge(){
return age;
}
string Person::getName(){
return name;
}
Person::Person(int age, string name){
this->age = age;
this->name = name;
}
main.cpp
#include<iostream>
#include<string>
#include"Person.h"
using namespace std;
int main(){
for(int i=0; i<10; i++){
cout << i << "\n" ;
}
Person p1 = Person(10,"aaaaa");
Person *p2 = new Person(20,"bbbbbb");
cout << "p1 Name:" << p1.getName() << "\n";
cout << "p2 Name:" << p2->getName() << "\n";
delete p2;
}
Makefile
edit:Person.h Person.cpp main.cpp
g++ Person.cpp main.cpp -o main
分步写Makefile
main:Person.o main.o
g++ -o main main.o Person.o
Person.o:Person.h Person.cpp
g++ -c Person.cpp
main.o:main.cpp
g++ -c main.cpp
clean:
rm *.o
rm main
利用ar将.o文件创建为.a文件
ar cr libperson.a Person.o
最好是lib开头,否则有可能找不到
编译
g++ main.cpp -o main -L. -lperson