原因是这样的,eclipse有那种生成实体类的插件,可是我感觉装来装去很麻烦,于是我想,干脆自己做一个生成实体类的工具吧,说做就做,然后就自己花了两个小时左右做出来了一个,以后应该能大大提高工作效率吧。
输入:属性个数
输入:type virableName
输出:d盘下面的example文件,该文件里面生成了实体类的代码
原理就是填充数据而已。。。根本没有难度
然后用了map模板把数据存起来了
**这个是数据截图,CKCommand表示类,5表示有几个属性,剩下的都是数据属性
然后把这个数据复制进控制台运行就可以了**
运行截图
最后的实体类截图
注意去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; }
以上是用實體類別工具使C++實作的生成java的詳細內容。更多資訊請關注PHP中文網其他相關文章!