struct相关内容

.NET 中的结构和类有什么区别?

.NET 中的结构和类有什么区别? 解决方案 在.NET中,有两类类型,引用类型和值类型.p> 结构是值类型,类是引用类型. 一般的区别是引用类型存在于堆上,而值类型存在于内联,也就是说,无论它是你定义的变量或字段. 包含值类型的变量包含整个值类型值.对于结构,这意味着变量包含整个结构及其所有字段. 一个包含引用类型的变量包含一个指针,或者一个引用到内存中实际值所在的其 ..
发布时间:2022-01-31 15:37:41 C#/.NET

C++中'struct'和'typedef struct'的区别?

在C++中,有什么区别: struct Foo { ... }; 和: typedef struct { ... } Foo; 解决方案 在 C++ 中,只有细微的差别.它是从 C 中继承下来的,在这方面有所作为. C 语言标准(C89 §3.1.2.3,C99 §6.2.3 和 C11 §6.2.3) 为不同类别的标识符规定了单独的命名空间,包括 标签标识符(用于struct/u ..
发布时间:2022-01-30 16:01:18 C/C++开发

C ++中的结构和类有什么区别?

这个问题已经在 C#/.Net 的上下文中提出. 现在我想了解 C++ 中结构和类之间的区别.请讨论技术差异以及在 OO 设计中选择其中一种的原因. 我将从一个明显的区别开始: 如果不指定public: 或private:,则结构的成员默认为public;默认情况下,类的成员是私有的. 我确信在 C++ 规范的晦涩角落中还有其他差异. 解决方案 你忘记了类和结构之间 ..
发布时间:2022-01-30 15:58:54 C/C++开发

使用 long 将指针从 JNI 传递到 Java

我正在尝试将结构作为指针从 JNI 传递到 Java,以便以后能够将其从 Java 传递回 JNI.我已阅读此主题:通过 JNI 在 C 和 Java 之间传递指针,但我没有成功. 我有一个相当复杂的结构:struct myStruct_s myStruct; 在 Java 中,我调用一个 JNI 函数来初始化结构并返回一个 long(指向结构的指针): JNIEXPORT jlon ..
发布时间:2022-01-25 20:57:01 Java开发

在 C# 中比较两个结构的值

我不是在寻找返回 bool 的两个结构的比较,我想知道是否有办法获取两个结构的哪些字段(相同的结构,但可能是不同的值)是不同的.基本上我想要一种更简单的方法来执行以下操作: 公共类差异{公共字符串变量名;公共对象 Val1;公共对象 Val2;公共差异(字符串 varName,对象 val1,对象 val2){变量名 = 变量名;val1 = val1;val2 = val2;}公共覆盖字符串 ..
发布时间:2022-01-25 09:44:36 C#/.NET

在C中迭代相同类型的结构成员

是否可以使用指针迭代所有成员都属于同一类型的 C 结构.以下是一些无法编译的示例代码: #include #include 类型定义结构{诠释 mem1 ;int mem2;诠释 mem3 ;诠释 mem4 ;} 富;无效 my_func( foo* 数据 ){诠释我;int* tmp = 数据;//这行是问题for( i = 0; i ..
发布时间:2022-01-24 11:33:45 其他开发

在 C++ 类或结构上声明只读变量

我从 C# 开始使用 C++,而 const 正确性对我来说仍然是新事物.在 C# 中,我可以声明这样的属性: 类类型{公共只读 int x;公共类型(int y){x = y;}} 这将确保 x 仅在初始化期间设置.我想在 C++ 中做类似的事情.我能想到的最好的方法是: 类类型{私人的:诠释_x;上市:类型(int y){ _x = y;}int get_x() { 返回 _x;}}; ..
发布时间:2022-01-24 00:01:52 C/C++开发

`==` 是否在 Julia 中递归检查结构?好像没有

在检查 Julia 中有关“struct"的相等性时,我不理解一种行为.对象.文档指出::“对于集合,== 通常在所有内容上递归调用,但也可以考虑其他属性(如数组的形状)".虽然它似乎是结构,但它被强制转换为 === 或其他东西.这是一个最小的工作示例: 正如所料: string1 = String("S")string2 = String("S")字符串 1 == 字符串 2 =>返回 ..
发布时间:2022-01-23 19:47:56 其他开发

Go 中复杂键字典的唯一性,但 Julia 中没有?

在 GO 中,当我使用结构作为映射的键时,键是唯一的. 例如,以下代码生成一个只有一个键的地图:map[{x 1}:1] 主包进口 (“fmt")类型 MyT 结构 {一个字符串整数}功能主要(){dic := make(map[MyT]int)对于我:= 1;我 我尝试在 Julia 中做同样的事情,但我有一个奇怪的惊喜: 这个 Julia 代码,类似于 GO 代码,生成一个包 ..
发布时间:2022-01-23 19:44:43 其他开发

朱莉娅:OOP 与否

我正在和 Julia 一起开发 Juno. 我不知道 Julia 是否支持 OOP. 例如,有没有类似c++的class或struct之类的东西? 如何用数据或函数等成员声明? 解决方案 如有疑问,请阅读文档... https://docs.julialang.org/en/v1/manual/types/#Composite-Types-1 长话短说: s ..
发布时间:2022-01-23 19:23:11 其他开发

如何使用 struct 删除编译器错误:“使用未分配的局部变量"

C# 编译器有点……老式……并且不会进行静态分析.所以它会在看似正确的代码上中断,如下所示: MyStruct s;布尔初始化=假;foreach( ACollection 中的某事 foo ){if( foo.Test() )继续;如果(初始化)s.DoSomething();别的{s = foo.GetMeAnS();初始化=真;}} 注意:不寻常的问题是“s"是一个结构.如果它是一个类, ..
发布时间:2022-01-23 14:39:58 C#/.NET

Python struct.pack() 用于列表中的单个元素?

我想将列表中的所有数据打包到一个缓冲区中,以通过 UDP 套接字发送.该列表相对较长,因此为列表中的每个元素编制索引很繁琐.这是我目前所拥有的: NumElements = len(data)buf = struct.pack('d'*NumElements,data[0],data[1],data[2],data[3],data[4]) 但是如果我向列表中添加更多元素,我想做一些不需要更改调 ..
发布时间:2022-01-22 17:27:59 Python

应该在堆栈上分配的变量的大小是否有最大限制?

我在 C 中声明了一个大小大于 1024 字节的结构变量.在运行 Coverity(静态代码分析器应用程序)时,它会报告此堆栈变量大于 1024 字节,因此会导致错误.我想知道我是否需要担心这个警告?单个堆栈变量的大小真的有最大限制吗? 谢谢,车 解决方案 它试图保护你的问题是堆栈溢出,因为不同的执行路径,在测试中很难找到.主要是因为这个原因——在堆栈上分配大量数据被认为是不好的形式 ..
发布时间:2022-01-22 13:02:06 其他开发

从 pop 函数返回错误的地址

在解决了我的结构的其他问题后,我的推送按预期工作,但是我的弹出返回错误的地址,我不知道为什么 - QNode* const Q_Pop(Q* const pointerQ){...//空检查QNode* tempNode = 指针Q->front.next;指针Q->front.next = (tempNode->next);tempNode->next->prev = &(pointerQ-> ..
发布时间:2022-01-22 12:45:12 其他开发

更改函数内部堆栈上的结构

我正在通过 Learn C the Hard Way 工作,目前我被困在 额外学分练习编号 16. 我目前正在尝试调整他们的代码并将结构放在堆栈而不是堆上,但我的代码给了我分段错误,我不确定为什么或如何继续.非常感谢任何建议. #include #include #include 结构人{字符*名称;年龄;整数高度;重量;};voi ..
发布时间:2022-01-22 12:43:28 其他开发

运行时:goroutine 堆栈超过 1000000000 字节限制,致命错误:打印嵌套结构时堆栈溢出

我有一个嵌套结构. type ConfigOne struct {//配置文件中的守护程序部分.守护进程}类型守护进程结构{日志级别 int日志文件字符串} 我在该类型上有一个 String() string 方法,我试图将嵌套的结构元素返回为 func (c ConfigOne)String() string{返回 fmt.Sprintf("%+v\n", c)} 当我尝试将其打印为 ..
发布时间:2022-01-22 12:32:56 其他开发

Swift - 追加到结构中的数组

我目前正在学习 swift 并正在试验数据结构.在可能的代码中,我有某些带有名称(字符串)和几个任务(字符串数组)的例程.这些值在一个结构中. 所以我试图在初始化后向数组添加另一个值.我的代码实际上正在运行,但是我真的认为它非常奇怪和奇怪,不要认为这是应该完成的方式. varroutineMgr:routineManager =routineManager();结构例程{var name ..
发布时间:2022-01-22 11:57:37 移动开发