Heim  >  Artikel  >  Java  >  Verwenden Sie Entitätsklassentools, um eine Java-Implementierung aus C++ zu generieren

Verwenden Sie Entitätsklassentools, um eine Java-Implementierung aus C++ zu generieren

一个新手
一个新手Original
2017-09-08 14:03:222189Durchsuche


前言

原因是这样的,eclipse有那种生成实体类的插件,可是我感觉装来装去很麻烦,于是我想,干脆自己做一个生成实体类的工具吧,说做就做,然后就自己花了两个小时左右做出来了一个,以后应该能大大提高工作效率吧。

实现方法

输入:属性个数
输入:type virableName
输出:d盘下面的example文件,该文件里面生成了实体类的代码

原理就是填充数据而已。。。根本没有难度
然后用了map模板把数据存起来了

使用截图

Verwenden Sie Entitätsklassentools, um eine Java-Implementierung aus C++ zu generieren
**这个是数据截图,CKCommand表示类,5表示有几个属性,剩下的都是数据属性
然后把这个数据复制进控制台运行就可以了**

Verwenden Sie Entitätsklassentools, um eine Java-Implementierung aus C++ zu generieren
运行截图

最后的实体类截图
Verwenden Sie Entitätsklassentools, um eine Java-Implementierung aus C++ zu generieren
注意去D盘下面找

代码

#include  <iostream>
#include  <string>
#include <map>
#include <fstream>
using namespace std;
int main()
{    
      int num;  //总体的成员个数
    string  which1, Vname,classname;    
    map<string, string > mapStudent;    //这个我服了
    map <string, string >::iterator m1_Iter;    
    cin >> classname;    
    cin >> num;    
    for (int i = 0; i<num; i++){        
    cin >> which1 >> Vname;

        mapStudent[Vname] = which1;

    }    
    
    cout << "Congratulation that you are success!"<<endl;

    ofstream examplefile("d:\\example.txt");    
    if (examplefile.is_open())
    {
        examplefile << "class "<<classname<<" implements Serializable{\n\n";        
        for (m1_Iter = mapStudent.begin(); m1_Iter != mapStudent.end(); m1_Iter++){            
        //cout << "diyige " << m1_Iter->first << "    " << m1_Iter->second.first << "  " << m1_Iter->second.second << endl;
            examplefile <<"    private "<< m1_Iter->second << " " << m1_Iter->first <<";\n";
        }        
        
        //first constructor
        examplefile << "\n//无参数的构造器\n";
        examplefile << "  public " << classname << "(){\n";
        examplefile << "\n";
        examplefile << "  }\n\n";        //第二个构造器
        examplefile << "//有参数的构造器\n";
        examplefile << "  public " << classname << "(";   //打印到括号地方了
        for (m1_Iter = mapStudent.begin(); m1_Iter != mapStudent.end(); m1_Iter++){            
        if (m1_Iter != mapStudent.end()){
                examplefile << m1_Iter->second << " " << m1_Iter->first << ",";
            }            else{
                examplefile << m1_Iter->second << " " << m1_Iter->first;
            }
        }
        examplefile << "){\n";               //构造函数里面的内容
        for (m1_Iter = mapStudent.begin(); m1_Iter != mapStudent.end(); m1_Iter++){            //examplefile << m1_Iter->second.first << " " << m1_Iter->second.second << ",";
            examplefile << "      this." << m1_Iter->first << " = " << m1_Iter->first << ";\n";

        }
        examplefile << "  }\n";        
        //----------------------------- 构造函数内容结束---------------------------------

        //----------------------------- get方法开始--------------------------------------
        examplefile << "\n//GET跟SET方法都在这里\n";        
        for (m1_Iter = mapStudent.begin(); m1_Iter != mapStudent.end(); m1_Iter++){            //examplefile << m1_Iter->second.first << " " << m1_Iter->second.second << ",";
            //examplefile << "this." << m1_Iter->second.second << " = " << m1_Iter->second.second << "\n";
            examplefile << "  public " << m1_Iter->second << " Get" << m1_Iter->first << "(){\n";
            examplefile << "      return " << m1_Iter->first << ";\n";
            examplefile << "  }\n\n";            
            //--------------------------------set方法继续--------------------------------
            examplefile << "  public void Set" << m1_Iter->first << "(" << m1_Iter->second << " " << m1_Iter->first\
                << "){\n";
            examplefile << "      this." << m1_Iter->first << "=" << m1_Iter->first<< ";\n";
            examplefile << "  }\n\n";
        }        
                //完结撒花
        examplefile << "}\n";
        examplefile.close();
    }
    system("pause");    return 0;
}

Das obige ist der detaillierte Inhalt vonVerwenden Sie Entitätsklassentools, um eine Java-Implementierung aus C++ zu generieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn