Как передать массив в класс
Перейти к содержимому

Как передать массив в класс

  • автор:

Passing arrays as arguments in C#

An array is a collection of similar type variables which are referred to by a common name. In C#, arrays are the reference types so it can be passed as arguments to the method. A method can modify the value of the elements of the array. Both single-dimensional and multidimensional arrays can be passed as an argument to the methods.

Passing 1-D Arrays as arguments to methods

One can pass the 1-D arrays to a method. There are various options like first, you declare and initialize the array separately then pass it to the method. Second, you can declare, initialize and pass the array to the method in a single line of code.

Example 1: Declaring and initializing array first and then pass it to the method as an argument.

Не пойму как передать массив в другой класс и работать с ним

Возможно будет сложно понять, но мне ещё сложнее объяснить то что не понимаю
Вообщем: Хочу сделать вывод в консоль, список, в идеале с вводом с клавиатуры. Сделал 3 класса.
1 класс. main — где будет просто вывод
2 класс. Worker — поля, где даю разрешения на чтение и запись. Пример public string Name < get; set; >
3.класс. Notepad — тут хочу получается из 2 класса передать эти поля в массив и засунуть в цикл for и там например 10 раз ввести эти поля. И в итоге должно быть так:

Иван | Иванов | 18 | учитель
Иван | Иванов | 18 | учитель
Иван | Иванов | 18 | учитель
Иван | Иванов | 18 | учитель
Иван | Иванов | 18 | учитель
Иван | Иванов | 18 | учитель
Иван | Иванов | 18 | учитель
Иван | Иванов | 18 | учитель
Иван | Иванов | 18 | учитель
Иван | Иванов | 18 | учитель

Как передать файл в класс, и работать там с ним?
Добрый день, у меня есть программа ,её надо реализовать через классы. Я работаю с фракталом.

Как передать ссылку на элемент активити в другой класс чтобы провести операции надо ним
Такая задача сложилась. есть активити MainActivity: public class MainActivity extends Main <. >.

Как передать массив в другой класс
Не могу понять, я хочу чтобы массив заполнялся в классе Program а выводился в классе Clas методе.

Как передать двумерный массив в другой класс
Есть двумерный массив: private bool aUniverse = new bool; private enum UNIVERSE_SIZE <.

How do I pass an array to a constructor?

I want to pass an array to a constructor, but only the first value is passed—the rest looks like garbage.

Here’s a simplified version of what I’m working on:

Can someone explain why this doesn’t work and how to properly pass an array? Also, I don’t want to copy the array. (And do I really have to indent every line by 4 spaces for code? That’s pretty tedious.)

6 Answers 6

In this case it might be best to use a reference to the array:

A couple of advantages — no copying of the array, and the compiler will enforce that the correct size array is passed in.

The drawbacks are that the array you initialize the board object with needs to live at least as long as the object and any changes made to the array outside of the object are ‘reflected’ into the object’s state. but those drawbacks occur if you use a pointer to the original array as well (basically, only copying the array will eliminate those drawbacks).

One additional drawback is that you can’t create the object using a pointer to an array element (which is what array function parameters ‘decay’ to if the array size isn’t provided in the parameter’s declaration). For example, if the array is passed through a function parameter that’s really a pointer, and you want that function to be able to create a board object referring to that array.

Как передать массив в конструктор класса?

Мне нужно считать элементы массива в конструкторе класса SegmentTree, следовательно необходимо как-то передать туда массив.
Код ниже выводит ошибку Types ‘SegmentTree’ and ‘SegmentTree *’ are not compatible
Что мне нужно сделать, чтобы все сработало?

  • Вопрос задан более двух лет назад
  • 286 просмотров
  • Facebook
  • Вконтакте
  • Twitter

Читайте ошибку внимательно. Дело не в массиве.

Вместо SegmentTree tree = new SegmentTree(a, n);
надо
SegmentTree tree(a, n); или SegmentTree *tree = new SegmentTree(a, n);

new — создает указатель. Инициализировать им нужно, соответственно, указатель.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *