【发布时间】:2013-10-26 16:05:58
【问题描述】:
我想知道是否可以依靠您的支持来解决这个问题,即用 C# 编写程序以使用指针实现队列或堆栈。
最大的问题是当我尝试在 C# 中重用 C++ 或 C 中的实现时,它们无法运行。
例如,当我尝试使用下面的代码来开始创建在 C# 中使用链表的代码时
struct cel {
int content;
struct cel *prox;
};
控制台应用程序返回以下错误:
(1) 'Cel':成员名称不能与其封闭类型相同 (2) 类、结构或接口成员声明中的标记“*”无效 (3) { 预期的 (4) 无效令牌';'在类、结构或接口成员声明中 (5) 类、结构或接口成员声明中的标记“命名空间”无效
由于我需要运行这部分代码以继续执行其他部分,我真的很想依靠您的帮助来解决这个问题。
如果你知道如何正确实现这部分代码,或者,如果你知道如何在 C# 中使用指针实现队列或堆栈,请给我完整的代码。
提前感谢您的支持。
【问题讨论】:
-
您需要先学习 C# 语言的基础知识——这是 Stack Overflow 无法教给您的东西,它需要一本书或(至少)一个好的教程。 C# 与 C 和 C++ 完全不同。
-
我尊重你的意见,但我不能同意你的看法。首先,因为如果它像你说的那么简单,我已经在我访问过的几十个站点之一中找到了答案。如果您不知道某个问题的答案,请不要愚蠢地在尝试回答之前评估其相关性。
-
他没有说你想做的事情很容易,他说语言不同,使用非常不同的做事方式。如果您想编写 C 或 C++ 代码,请编写 C 或 C++ 代码!这些语言并没有错,它们很有趣,写起来很有趣,特别是如果你已经知道如何做你想做的事。但是,如果您想编写 C#,则需要先学习基础语言,因为虽然相似,但您必须首先了解一些主要差异(此处无法解释,您应该拿起一本书或按照教程首先)。
-
作为语言差异的一个简单示例,在 C# 中,默认情况下您已经在任何地方使用指针(类是“引用对象”,因此变量持有引用(一种智能指针)实物)。所以基本上在 C# 中,当你有一个
class而不是struct时,假装每个.确实是一个->。您在上面的代码中所做的是使用普通的原始指针,除非您处于非常特殊的情况,否则在 C# 中几乎从未这样做过。 -
“请给我完整的代码”我们是什么,你们的走狗?