【C++】クラス

クラスの作成方法

クラスを定義するキーワードには、以下の2通りある。

 [1] class
 [2] struct

 ※ classを使って定義したクラスのメンバは、既定でprivateで、
    structを使って定義したクラスのメンバは、public。

構文

class クラス名
{
アクセス修飾子:
   型 変数名;
   関数 関数名(引数)
   {
     処理
   }
};

 * アクセス修飾子:public、protected、private

サンプル

Person.h

#ifndef Person_h
#define Person_h

#include "stdafx.h"
#include <string>
#include <iostream>
#include <sstream>
using namespace std;
using namespace System;

class Person
{
public:
	int id;
	string name;
	char sex;
	int age;
	
	Person();
	
	~Person();

	void display();
};

#endif

Person.cpp

* thisポインタ(ex. this->id)については、以下を参照のこと
http://wisdom.sakura.ne.jp/programming/cpp/cpp15.html
#include "stdafx.h"
#include "Person.h"
#include <iostream>
using namespace std;

Person::Person()
{
	cout << "コンストラクタ" << endl;
}

Person::~Person()
{
	cout << "デストラクタ" << endl;
}

void Person::display()
{
	stringstream ss;
	ss << "Person : " << this->id << " " << this->name << " "
		<< this->sex << " " << this->age;
	cout << ss.str() << endl;
}

SampleCpp.cpp

#include "stdafx.h"
#include "Person.h"
using namespace std;

int main(array<System::String ^> ^args)
{
	Person* person = new Person();
	person->id = 1;
	person->name = "Mike";
	person->sex = 'M';
	person->age = 27;

	person->display();

	delete person;

	return 0;
}