Marshal 大小常量数组

2024-03-15

我试图在结构内有一个堆栈分配的数组。我指的是指针。但我希望在没有额外代码的情况下完成分配,因为我在编写代码时知道大小(我不想做一堆new当我创建我的结构时)。 如果我什至可以做到不unsafe完美的背景。 我尝试了一些东西,但效果不佳。我是 C# 的新手,所以可能有一种我没有看到的方法!

public struct TestValue {int value; }

[StructLayout(LayoutKind.Sequential)]
public struct TestArray {
   [MarshalAs(UnmanagedType.ByValArray, SizeConst=128)] public TestValue[] s1;
}

public struct TestSpan
{
    Span<TestValue> data= stackalloc TestValue[10];
}

using System.Runtime.InteropServices;

public struct TestValue {int value; }

[StructLayout(LayoutKind.Sequential)]
public struct TestArray {
   [MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst=128)] public TestValue[] s1;
}

public class Foo
{
    void test()
    {
        TestArray test = new TestArray();
        test.s1[10] = new TestValue();
    }
}

我最终只需要一个小小的改变!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Marshal 大小常量数组 的相关文章

  • 如何获取正在访问 ASP.NET 应用程序的当前用户?

    为了获取系统中当前登录的用户 我使用以下代码 string opl System Security Principal WindowsIdentity GetCurrent Name ToString 我正在开发一个 ASP NET 应用程
  • 我如何才能等待多个事情

    我正在使用 C 11 和 stl 线程编写一个线程安全队列 WaitAndPop 方法当前如下所示 我希望能够将一些内容传递给 WaitAndPop 来指示调用线程是否已被要求停止 如果 WaitAndPop 等待并返回队列的元素 则应返回
  • 用于检查类是否具有运算符/成员的 C++ 类型特征[重复]

    这个问题在这里已经有答案了 可能的重复 是否可以编写一个 C 模板来检查函数是否存在 https stackoverflow com questions 257288 is it possible to write a c template
  • 查找c中结构元素的偏移量

    struct a struct b int i float j x struct c int k float l y z 谁能解释一下如何找到偏移量int k这样我们就可以找到地址int i Use offsetof 找到从开始处的偏移量z
  • 为什么当实例化新的游戏对象时,它没有向它们添加标签? [复制]

    这个问题在这里已经有答案了 using System Collections using System Collections Generic using UnityEngine public class Test MonoBehaviou
  • BitTorrent 追踪器宣布问题

    我花了一点业余时间编写 BitTorrent 客户端 主要是出于好奇 但部分是出于提高我的 C 技能的愿望 我一直在使用理论维基 http wiki theory org BitTorrentSpecification作为我的向导 我已经建
  • 用于登录 .NET 的堆栈跟踪

    我编写了一个 logger exceptionfactory 模块 它使用 System Diagnostics StackTrace 从调用方法及其声明类型中获取属性 但我注意到 如果我在 Visual Studio 之外以发布模式运行代
  • C# 中通过 Process.Kill() 终止的进程的退出代码

    如果在我的 C 应用程序中 我正在创建一个可以正常终止或开始行为异常的子进程 在这种情况下 我通过调用 Process Kill 来终止它 但是 我想知道该进程是否已退出通常情况下 我知道我可以获得终止进程的错误代码 但是正常的退出代码是什
  • 使用 Bearer Token 访问 IdentityServer4 上受保护的 API

    我试图寻找此问题的解决方案 但尚未找到正确的搜索文本 我的问题是 如何配置我的 IdentityServer 以便它也可以接受 授权带有 BearerTokens 的 Api 请求 我已经配置并运行了 IdentityServer4 我还在
  • 如何设计以 char* 指针作为类成员变量的类?

    首先我想介绍一下我的情况 我写了一些类 将 char 指针作为私有类成员 而且这个项目有 GUI 所以当单击按钮时 某些函数可能会执行多次 这些类是设计的单班在项目中 但是其中的某些函数可以执行多次 然后我发现我的项目存在内存泄漏 所以我想
  • 如何序列化/反序列化自定义数据集

    我有一个 winforms 应用程序 它使用强类型的自定义数据集来保存数据进行处理 它由数据库中的数据填充 我有一个用户控件 它接受任何自定义数据集并在数据网格中显示内容 这用于测试和调试 为了使控件可重用 我将自定义数据集视为普通的 Sy
  • 什么时候虚拟继承是一个好的设计? [复制]

    这个问题在这里已经有答案了 EDIT3 请务必在回答之前清楚地了解我要问的内容 有 EDIT2 和很多评论 有 或曾经 有很多答案清楚地表明了对问题的误解 我知道这也是我的错 对此感到抱歉 嗨 我查看了有关虚拟继承的问题 class B p
  • 对现有视频添加水印

    我正在寻找一种用 C 在视频上加水印的方法 就像在上面写文字一样 图片或文字标签 我该怎么做 谢谢 您可以使用 Nreco 视频转换器 代码看起来像 NReco VideoConverter FFMpegConverter wrap new
  • 如何从两个不同的项目中获取文件夹的相对路径

    我有两个项目和一个共享库 用于从此文件夹加载图像 C MainProject Project1 Images 项目1的文件夹 C MainProject Project1 Files Bin x86 Debug 其中有project1 ex
  • 将控制台重定向到 .NET 程序中的字符串

    如何重定向写入控制台的任何内容以写入字符串 对于您自己的流程 Console SetOut http msdn microsoft com en us library system console setout aspx并将其重定向到构建在
  • C# 成员变量继承

    我对 C 有点陌生 但我在编程方面有相当广泛的背景 我想做的事情 为游戏定义不同的 MapTiles 我已经像这样定义了 MapTile 基类 public class MapTile public Texture2D texture pu
  • 是否可以在 .NET Core 中将 gRPC 与 HTTP/1.1 结合使用?

    我有两个网络服务 gRPC 客户端和 gRPC 服务器 服务器是用 NET Core编写的 然而 客户端是托管在 IIS 8 5 上的 NET Framework 4 7 2 Web 应用程序 所以它只支持HTTP 1 1 https le
  • C# - OutOfMemoryException 在 JSON 文件上保存列表

    我正在尝试保存压力图的流数据 基本上我有一个压力矩阵定义为 double pressureMatrix new double e Data GetLength 0 e Data GetLength 1 基本上 我得到了其中之一pressur
  • C++ 标准是否指定了编译器的 STL 实现细节?

    在写答案时this https stackoverflow com questions 30909296 can you put a pimpl class inside a vector我遇到了一个有趣的情况 这个问题演示了这样一种情况
  • 如何防止用户控件表单在 C# 中处理键盘输入(箭头键)

    我的用户控件包含其他可以选择的控件 我想实现使用箭头键导航子控件的方法 问题是家长控制拦截箭头键并使用它来滚动其视图什么是我想避免的事情 我想自己解决控制内容的导航问题 我如何控制由箭头键引起的标准行为 提前致谢 MTH 这通常是通过重写

随机推荐

  • ASP.NET MVC 3 和 NHibernate 脚手架

    我找到了这篇文章 http blog stevensanderson com 2011 01 13 scaffold your aspnet mvc 3 project with the mvcscaffolding package htt
  • Heroku SSL 端点 - “没有这样的应用程序”

    有什么想法为什么当我访问 herokussl com URL 时 添加证书和 Heroku SSL 端点后 可能会收到 No Such App 错误 我按照这里的说明进行操作 https devcenter heroku com artic
  • 检测到依赖循环导入/无循环

    我正在尝试在 ES6 中设置 API 端点 在我的主服务器文件中 我尝试导入路由器模块 但收到错误 检测到依赖循环导入 无循环 请在下面找到我的代码以获得许可和帮助 import express from express import bo
  • 球体上的 3D 坐标为纬度和经度

    我得到以下信息 存在一个原点为 0 0 0 半径为 R 的球体 进行射线球体相交后 我知道 3D 空间中球体上的一个点 XYZ 直线穿过球体外壳的 3D 空间中的确切位置 对于我的程序 我想计算球体上 XYZ 点的纬度和经度 但我无法想出
  • 删除所有 Git 提交历史记录

    我正在尝试从 Github 获取一个存储库 恢复过去的标签 将其推送到另一个远程并删除所有历史记录 除了删除所有提交日志之外 我可以执行以下所有操作 我缺少什么 git clone https github com user user re
  • asp.net mvc 模型与实体框架模型

    在 asp net mvc model 文件夹中创建模型是最佳实践吗 将这些模型与您的视图结合使用 并使用服务层将我的模型 调整 为 EF 模型 或者您是否使用过其他方法 这种方法的问题在于 大多数时候我的 自制 模型是 EF 模型的副本
  • 失败 [INSTALL_FAILED_UPDATE_INCOMPATIBLE],然后是 DELETE_FAILED_INTERNAL_ERROR

    当我尝试在 nexus5 设备上运行应用程序时 android studio 打开错误窗口 显示 安装失败 并显示消息 INSTALL FAILED CONFLICTING PROVIDER 然后系统询问我是否要卸载现有应用程序 即使设备上
  • 将 MySQL 日期时间转换为时间戳

    我正在尝试将日期时间转换为时间戳 但 mysql 向我发出警告 并且转换后的值也是错误的 这是SQL查询 UPDATE table1 A table2 B SET B date added UNIX TIMESTAMP STR TO DAT
  • sqlite 搜索多列

    我正在尝试对表中的所有列执行区分大小写的搜索 所以我做了类似的事情 Select From mytable Where col1 col2 etc like SomeValue 但对于大写和小写它总是返回相同的结果 如果我这样做 Selec
  • 如何使用 JpegTran 递归处理 Windows 目录中的所有图像并覆盖它们?

    现在我有以下批处理文件用于处理图像 echo none cd 1 md 1 ProcessedJPEGS for i in jpg do C Program Files Image Optimization jpegtran exe opt
  • 使用 Gradle Release 插件进行 Android 构建

    我想用Gradle 发布插件 https github com townsfolk gradle release in Android Project 我配置了它 一切都很好 除了一件事 Gradle Release Plugin更改项目版
  • Django 模型子类的类型提示

    我有 Django 视图的辅助函数 如下所示 代码如下 它返回 None 或与给定查询匹配的单个对象 例如pk 1 from typing import Type Optional from django db models import
  • 哪个 API 允许我将 PayPal 保存为可重复使用的付款类型

    我目前正在开展一个项目 将 PayPal 实施为类似于保存的信用卡的可重复使用的付款选项 我在类似的网站上看到过这样做http www fab com http www fab com它允许用户登录 PayPal 一次 然后存储他们的付款信
  • 使用 PostgreSQL、Javascript 库或可重用函数存储和索引 YAML?

    PostgreSQL http www postgresql org 9 2 具有原生 JSON 支持 不过 我想将人类可读的配置文件存储在 YAML 中 我想我想索引一些 但不是全部 配置文件值 因此我想知道 例如 是否可以在 Postg
  • 如何将mongoDB数据导出为CSV格式?

    我正在寻找一种非常简单的方法将数据从 mongoDB 导出到 CSV 大多数答案都涉及 bash 脚本 等等 是否有一个简单的 mongoDB 命令可以将数据导出到 CSV 中 Update 从 mongo 3 0 6 开始 csv不再支持
  • 用于填写 PDF 表单的 Android 应用程序

    我想为 PDF 表单设计一个应用程序 只是为了通过 Android 应用程序自动填充它 我想向用户展示一些在 xml android 应用程序 UI 上设计的表单 并用传入的信息填充 pdf 表单 我有 PDF 格式的表格 我只想将其与我的
  • 使用来自同一 URL 的多个 POST 数据进行抓取

    我已经创建了一个蜘蛛 它可以收集具有匹配电话号码的公司名称列表 然后将其保存到 CSV 文件中 然后我想使用 CSV 文件中的电话号码作为 POST 数据从另一个网站抓取数据 我希望它循环访问相同的起始 URL 但只是抓取每个电话号码生成的
  • 剔除映射 JSON 读取时出错

    我正在 Web 应用程序上使用淘汰赛 该应用程序使用 foreach 显示数据 包括所有需要的库 我收到以下错误 Error Unable to parse bindings Message ReferenceError d is not
  • jquery 中两个类之间的淡入淡出

    我希望能够淡出这门课 h2 class care home fees a title Care Home Fees href Text a h2 并淡入此 h2 class care home fees over a title Care
  • Marshal 大小常量数组

    我试图在结构内有一个堆栈分配的数组 我指的是指针 但我希望在没有额外代码的情况下完成分配 因为我在编写代码时知道大小 我不想做一堆new当我创建我的结构时 如果我什至可以做到不unsafe完美的背景 我尝试了一些东西 但效果不佳 我是 C