Перевод кода из 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);
- }
- };
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д