CORBA数据类型的分配、初始化与释放
1. 引言
在CORBA编程中,不同的数据类型有着各自独特的内存分配、初始化和释放方式。了解这些操作对于正确使用CORBA数据类型至关重要。本文将详细介绍各种CORBA数据类型的相关操作。
2. 分配与初始化
2.1 通用原则
大多数CORBA数据类型(除了如 CORBA::Short 等简单类型)可以在栈或堆上分配内存。在调用中传递CORBA数据类型之前,必须对其进行初始化。例如,空字符串应初始化为 "" ,而不是 NULL 。
2.2 字符串类型
- 无界字符串 :CORBA字符串只能在堆上分配,可使用
CORBA::string_alloc()函数。
// C++
#include <string.h>
// Allocation using smart pointer
CORBA::String_var strV = CORBA::string_alloc(5+1);
// Initialization
strncpy((char*) strV, "Hello", 5);
// Allocation using dumb pointer
char * strP = CORBA::string_alloc(5+1);
// Initialization
strncpy((char*) strP,
超级会员免费看
订阅专栏 解锁全文

181

被折叠的 条评论
为什么被折叠?



