Перевод кода из C++ в C#
Формулировка задачи:
Понимаю, что прошу сложную задачу, но я начал изучать C# буквально пару дней назад, а уже сейчас нужно перевести код из C++ в C#.
#include <iostream> #include <cstdio> using namespace std; struct item{ char* name; char* value; }; class ATable { item *mass; int i = 0, len = 0; public: ATable(int maxsize=100){ mass=new item[maxsize]; } ~ATable(){ delete[] mass; } void add(char *name, char *value){ for(i = 0; i < len; ++i){ if(mass[i].name == name){ break; } if( i < 100){ mass[i].name = name; mass[i].value = value; len = len>i+1 ? len : i + 1; } } } void remove(char *name){ for(i = 0, name != NULL, ++i){ if(mass[i].name==name){ for(int j = i; mass[j] != NULL; ++j){ mass[j] = mass[j + 1]; } } } } void setValue(char *name, char *value); // заменить значение char *getValue(char *name); // если не нашли вернуть NULL void print(); // распечатать состояние объекта }; int main(){ ATable Table=new ATable; ATable::add("fish","рыба"); cout<<mass[0].name<<mass[0].value; return 0; }
#include <iostream> namespace Programm{ class ATable { public: ATable(int maxsize=100); ~ATable(); void add(char *name, char *value); void remove(char *name); void setValue(char *name, char *value); // заменить значение char *getValue(char *name); // если не нашли вернуть NULL void print(); // распечатать состояние объекта }; }
Решение задачи: «Перевод кода из C++ в C#»
textual
Листинг программы
using System; using System.Collections.Generic; using System.Linq; namespace ConsoleApplication2 { class ATable { public class item { public string name; public string value; }; public List<item> mass; public ATable() { mass = new List<item>(); } public void add(string name, string value) { if (mass.Select(x => x.name).Contains(name)) return; mass.Add(new item() { name = name, value = value }); } public void remove(string name) { item NoNeedItem = mass.Where(x => x.name == name).FirstOrDefault(); if (NoNeedItem == null) return; mass.Remove(NoNeedItem); } void print() // распечатать состояние объекта { // TODO реализовать распечатку } static void Main(string[] args) { ATable Table = new ATable(); Table.add("fish", "рыба"); Console.WriteLine("{0} {1}", Table.mass[0].name, Table.mass[0].value); } }; }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д