1. 程式人生 > >C++建立類

C++建立類

C++的類分為兩部分: .hpp 和 .cpp

建立一個類:man,man的例項物件包含兩個屬性變數:name 和 age

一..hpp檔案

#ifndef man_hpp

#define man_hpp

#include <stdio.h>

class man{

//在類的內部沒有許可權限定符,預設是private

//在結構內部沒有許可權限定符,預設是public

private:

//定義成員變數

char name[100];

int age;

public:

//建構函式,如果不寫建構函式,系統內部會自動生成一個建構函式

    man();

//解構函式

    ~man();

//設定方法

void set_name(constchar *s);

void set_age(int i);

//獲取方法

constchar *get_name();

int get_age();

};

#endif /* man_hpp */

二..hpp檔案

#include <iostream>

#include "man.hpp"

#include "man.hpp"

#include <string.h>

//名稱空間

usingnamespacestd;

//一個類例項化一個物件的時候自動呼叫建構函式

man :: man(){

cout << "man" << "\n";

//初始化name

memset(name, 0, sizeof(name));

//初始化age

age = 0;

}

//當物件在記憶體中銷燬的時候自動被呼叫

man::~man(){

cout << "~man" << "\n";

}

//::呼叫設定方法

voidman::set_name(constchar *s){

strcpy(name, s);

}

voidman::set_age(int i){

age = i;

}

//呼叫獲取方法

constchar *man::get_name(){

returnname;

}

intman::get_age(){

returnage;

}

三.main.cpp

#include <iostream>

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

#include "man.hpp"

//名稱空間

usingnamespacestd;

int main(int argc,constchar * argv[]) {

std::cout <<"Hello, World!\n";

man m;

    m.set_name("tiantian");

    m.set_age(10);

cout <<"name =" << m.get_name() <<"\n";

cout <<"age = " << m.get_name() <<"\n";

return0;

}