Files
RepoMain/ZCppMain/test.cpp

119 lines
2.6 KiB
C++
Raw Normal View History

2021-02-25 17:51:25 +09:00
2021-02-26 17:21:25 +09:00
2021-02-25 17:52:07 +09:00
#include <iostream>
2021-03-04 17:55:37 +09:00
#include "ZtCArray.H"
2021-02-26 17:21:25 +09:00
#include "ZtCObjList.H"
2021-02-25 17:27:36 +09:00
2021-02-25 17:51:25 +09:00
2021-02-26 17:33:59 +09:00
using namespace std ;
using namespace ZNsMain ;
2021-02-25 17:27:36 +09:00
2021-02-25 17:51:25 +09:00
2021-02-26 17:58:57 +09:00
namespace ZNsMain{namespace ZNsHide
2021-02-26 17:57:28 +09:00
{
class ZCFunctor1
{
private:
ZTypInt mi_Index;
public :
ZCFunctor1(){mi_Index=0;}
void operator()(int ArgiValue)
{ cout<<"# index="<<++mi_Index<<", Value="<<ArgiValue<<endl; }
public :
};/*
class ZCFunctor1*/
}/*
2021-02-26 18:00:29 +09:00
namespace ZNsHide*/}/*namespace ZNsMain*/
2021-02-26 17:57:28 +09:00
2021-02-26 17:33:59 +09:00
int main(int ArgiCnt, char** AppArgu)
{
2021-02-26 17:36:05 +09:00
cout<<endl<<"!!! C++'s Great Start !!!"<<endl<<endl;
2021-02-25 17:27:36 +09:00
2021-02-26 17:33:59 +09:00
typedef ZNsMain::ZtCObjList<int> CListByInt;
2021-03-04 17:55:37 +09:00
typedef ZNsMain::ZtCArray <int> CArrayInt ;
2021-02-26 17:33:59 +09:00
CListByInt VO_IntList;
2021-03-04 17:55:37 +09:00
CArrayInt VO_IntArr ;
2021-02-26 17:33:59 +09:00
2021-03-04 16:22:15 +09:00
VO_IntList.AddTail(10);
VO_IntList.AddTail(40);
VO_IntList.AddTail(20);
VO_IntList.AddTail(80);
VO_IntList.AddTail(90);
2021-02-26 17:33:59 +09:00
2021-03-04 17:55:37 +09:00
VO_IntArr.AddTail(123);
VO_IntArr.AddTail(153);
VO_IntArr.AddTail(543);
VO_IntArr.AddTail(553);
VO_IntArr.AddTail(983);
2021-02-26 17:41:18 +09:00
2021-03-04 16:14:44 +09:00
typedef ZtStTuple<int, int> ZCTuple;
2021-03-04 16:10:09 +09:00
ZCTuple VO_CTuple; VO_CTuple._1 = 1;
_FFS_(ZCShowData1)
2021-02-26 17:41:18 +09:00
(ZTypInt AiInt)
{
2021-03-08 20:29:43 +09:00
cout<<"# Elem1 : "<< AiInt << endl;
2021-02-26 17:55:33 +09:00
}/*
(ZTypInt AiInt)*/
2021-03-04 16:10:09 +09:00
_FFC_(ZCShowData1)
2021-03-04 15:49:03 +09:00
2021-03-04 16:10:09 +09:00
_FFS_(ZCShowData2)
2021-03-04 16:19:02 +09:00
(ZTypInt AiInt, ZCTuple& AR_CTuple)
2021-03-04 16:10:09 +09:00
{
2021-03-08 20:29:43 +09:00
cout<<"# Elem2 : "<< AiInt << ", nth=" << AR_CTuple._1++ << endl;
2021-03-04 16:10:09 +09:00
}/*
2021-03-04 16:19:02 +09:00
(ZTypInt AiInt, ZCTuple& AR_CTuple)*/
2021-03-04 16:10:09 +09:00
_FFC_(ZCShowData2)
2021-03-04 15:49:03 +09:00
2021-03-04 16:19:02 +09:00
_FFS_(ZCShowData3)
2021-03-08 20:27:36 +09:00
(ZTypInt AiInt, ZCTuple& AR_CTuple)
2021-03-04 16:19:02 +09:00
{
2021-03-08 20:29:43 +09:00
cout<<"# Elem3 : "<< AiInt << ", nth=" << AR_CTuple._1++ << endl;
2021-03-04 16:19:02 +09:00
}/*
2021-03-08 20:27:36 +09:00
(ZTypInt AiInt, ZCTuple* AR_CTuple)*/
2021-03-04 16:19:02 +09:00
_FFC_(ZCShowData3)
2021-03-08 20:37:34 +09:00
_FFS_(ZCShowData4)
(ZTypInt AiInt, ZCTuple& AR_CTuple)
{
cout<<"# Elem4 : "<< AiInt << ", nth=" << AR_CTuple._1++ << endl;
}/*
(ZTypInt AiInt, ZCTuple* AR_CTuple)*/
_FFC_(ZCShowData4)
2021-02-26 17:55:33 +09:00
2021-03-04 16:10:09 +09:00
ZNsHide::ZCFunctor1 VO_CFunctor1;
2021-02-26 18:02:09 +09:00
/* ZCFunctor1 선언이 main() 바깥에 있어야 하는 문제를 해결할 수 없을까. */
2021-02-26 17:55:33 +09:00
2021-03-04 16:10:09 +09:00
VO_IntList.IterElement(ZCShowData1::Exec);
2021-03-08 20:37:34 +09:00
VO_IntList.IterElemRef(ZCShowData2::Exec, VO_CTuple ); VO_CTuple._1=1 ;
2021-03-04 16:20:05 +09:00
VO_IntList.IterElement(ZCShowData3::Exec, &VO_CTuple);
2021-03-04 16:10:09 +09:00
VO_IntList.IterElement(&VO_CFunctor1 );
2021-03-08 20:37:34 +09:00
VO_IntArr .IterElement(&VO_CFunctor1 ); VO_CTuple._1=1 ;
VO_IntArr .IterElement(ZCShowData4::Exec, &VO_CTuple);
2021-02-26 17:33:59 +09:00
2021-02-25 17:51:25 +09:00
return 0;
}/*
int main(int ArgiCnt, char** AppArgu)*/
2021-02-26 17:33:59 +09:00
/*/////////////////////////////////////
g++ -o test.exe test.cpp -I..
/////////////////////////////////////*/