/*★ value class GCM 前田 稔 ★*/ #define SAFE_DELETE(p) { if (p) { delete (p); (p) = nullptr; } } using namespace System; value class GCM { private: int w1,w2; public: int gcm(int v1, int v2) { w1 = v1; w2 = v2; while(w1 != w2) { if (w1 > w2) w1-= w2; else w2-= w1; } return w1; } }; |
int main() { GCM^ pGcm = nullptr; pGcm = gcnew GCM(); func(pGcm); SAFE_DELETE(pGcm); System::Console::ReadLine(); return 0; } |
void func(GCM^ pGcm) { Console::WriteLine("24 と 32 の GCM は {0} です", pGcm->gcm(24,32)); } |