C# требуется ссылка на объект проблема
в своей основной программе я пытаюсь использовать
stack.createStack(40);
в классе стека у меня есть эта функция
public void createStack(object value) { stack S = new stack(); head = new Node(); head.Cont = value; size++; }
Я просто пытаюсь создать функцию конструктора, которая создаст новый стек, стек, определенный следующим образом
<pre>public List<int> stacklist; public class Node { public object Cont; public Node Next; } public Node head; public stack() { head = null; } public stack(object value) { head = new Node(); head.Cont = value; }
Я получаю ошибку:
Error CS0120 An object reference is required for the non-static field, method, or property 'stack.createStack(object)' Lists
Что я уже пробовал:
Я понятия не имею, что делать дальше или как этого избежать
Richard Deeming
То createStack
метод создает новый stack
например, и выбрасывает его. Затем он создает новый Node
например, сохраняет параметр в поле на этом узле, а затем выбрасывает узел. В то время как инкременты a size
переменная, которая здесь не показана.
Вы также используете camelCasing
для типов и методов, которые идут вразрез рекомендации по именованию[^]. Типы, свойства и методы следует использовать PascalCasing
; вы должны использовать только camelCasing
для параметров.
В сочетании с вашей путаницей по поводу статических членов и членов экземпляра это говорит о том, что вам, вероятно, будет полезно просмотреть некоторые вводные учебные пособия. Например:
Введение в C# - интерактивные учебные пособия | Microsoft Docs[^]