【问题标题】:Are member functions part of a structure in memory?成员函数是内存结构的一部分吗?
【发布时间】:2020-06-01 15:17:03
【问题描述】:

我正在使用 C# 开发一个网络应用程序,我需要为其传输一个结构(它包含 3 个字符串成员)。

我还想包括以某些方式测试这 3 个字符串的有效性的成员函数。

我想知道,如果我要将该结构(我使用 Marshal.StructToPtr)转换为字节以便通过连接发送它,它会只是转换成员变量(3 个字符串)还是每个函数?

【问题讨论】:

    标签: c# memory


    【解决方案1】:

    应用程序代码(IL 指令、方法、机器代码等)不是任何序列化过程的一部分。它只会序列化那里的数据(字段)。

    您可以将内存视为不同的段,其中类/结构定义与实例数据分开。

    为了序列化目的而通过网络发送代码是一种不好的做法,因为它会打开远程进程来执行任意代码。

    【讨论】:

    • 应用程序代码是什么意思。函数是结构的一部分。你的意思是函数不会被转换,只是剩下的数据(字符串)?
    • 非常感谢,兄弟!
    猜你喜欢
    • 2012-12-26
    • 2021-04-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-04
    • 2013-10-29
    • 2022-11-07
    • 2014-08-03
    相关资源
    最近更新 更多