社区
VC.NET
帖子详情
在C++.NET中如何定义具有输出参数的函数
飞花丝雨
2009-10-15 10:15:10
本人需要将标准C++程序封装成.net程序给C#调用,某个类成员函数有几个输出参数(C++引用),如果直接使用.net引用^, 不能将参数带出去(在C#中是普通参数,不是ref或out),在C++封装时应该如何指定呢?
...全文
332
2
打赏
收藏
在C++.NET中如何定义具有输出参数的函数
本人需要将标准C++程序封装成.net程序给C#调用,某个类成员函数有几个输出参数(C++引用),如果直接使用.net引用^, 不能将参数带出去(在C#中是普通参数,不是ref或out),在C++封装时应该如何指定呢?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
飞花丝雨
2009-10-15
打赏
举报
回复
用%指定一个引用参数,对应C#中的ref,即输入输出参数。
加上[out]限定,变为仅输出的参数,即C#中的out
[Runtime::InteropServices::Out]可以简写为[out],默认为[in, out]
飞花丝雨
2009-10-15
打赏
举报
回复
已解决,供大家参考,详见MSDN(VS2008)
此示例演示如何将函数参数指定为 out 参数,以及如何从 C# 程序中调用该函数。
在 Visual C++ 中使用 OutAttribute 指定输出参数。
此示例的第一部分是一个 Visual C++ DLL,其类型包含一个具有输出参数的函数。
// cpp_out_param.cpp
// compile with: /LD /clr:safe
using namespace System;
public value struct TestStruct {
static void Test([Runtime::InteropServices::Out] String^ %s) {
s = "a string";
}
};
这是一个 C# 客户端,它将使用前面示例中创建的 Visual C++ 组件。
// cpp_out_param_2.cs
// compile with: /reference:cpp_out_param.dll
using System;
class TestClass {
public static void Main() {
String t;
TestStruct.Test(out t);
System.Console.WriteLine(t);
}
}
C++
编程实例100篇
C++
编程实例100篇,里面有很多很基础的编程实例,可以作为参考。
C#调用C/
C++
Dll
中
函数
实例代码
实例代码说明如何在托管的C#代码
中
调用非托管的Win32 API或者自己用C/
C++
写的Dll
中
的
函数
,以及如何传递输入、
输出
字符串
参数
,结构类型
参数
等问题。
C++
在
函数
中
定义
函数
C++
实现在
函数
中
定义
“
函数
”的功能
深入理解Visual
C++
.NET
本文还有配套的精品资源,点击获取 简介:本书是为有一定
C++
基础的程序员所准备的,深入讲解
.NET
框架下的
C++
编程,涵盖语言特性、类库使用、程序设计模式及
.NET
框架集成。详细介绍了
C++
.NET
的高级特性,如模板元编程、异常处理、线程并发和内存管理,以及
.NET
环境下的STL应用,提升编程效率和软件系统的可扩展性。读者可通过《
中
国IT认证实验室学习下载频道.txt》等资...
Visual
C++
.NET
程序设计与实例详解
本文还有配套的精品资源,点击获取 简介:本书《Visual
C++
精彩实例详解***程序设计 配套代码》重点介绍如何使用Microsoft Visual
C++
.NET
环境进行程序开发。内容从基础编程技巧到高级应用,通过丰富的实例涵盖
C++
编程的多个方面,如面向对象编程、文件操作、Windows API使用、MFC库、线程编程、图形GUI编程、网络编程和数据库访问等。本书...
VC.NET
7,539
社区成员
27,671
社区内容
发帖
与我相关
我的任务
VC.NET
.NET技术 VC.NET
复制链接
扫一扫
分享
社区描述
.NET技术 VC.NET
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章