首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >perl指针数组引用的解引用

perl指针数组引用的解引用
EN

Stack Overflow用户
提问于 2021-04-09 10:54:09
回答 1查看 51关注 0票数 0

我想要获取a1的值,但我得到一个错误消息:无法使用未定义的值作为标量引用。

代码语言:javascript
运行
复制
sub new{

  _name = [\\@ a1, \\@a2];

}

我的代码:

代码语言:javascript
运行
复制
${self->_name}[0];   //get the pointer a1

${${self->_name}[0]}  // get the value a1
EN

回答 1

Stack Overflow用户

发布于 2021-04-09 15:21:19

在Perl语言中,只在顶层使用符号(@$%&)后跟花括号来取消引用带有"->“操作符的指针。例如:

代码语言:javascript
运行
复制
use strict;
use warnings;
print "Outer Array:\n  " . _name() . "\n";

print "First inner Array:\n  " . _name()->[0]. "\n";
print "First Value of first inner Array:\n  " . _name()->[0]->[0]. "\n";
print "All Values of first inner Array:\n  " . join("/", @{_name()->[0]}) . "\n";
sub _name {
    my @a1 = (4 , 5 , 6);
    my @a2 = (1 , 2 , 3);
    return [\@a1, \@a2];
}

可能会打印出来:

代码语言:javascript
运行
复制
Outer Array:
  ARRAY(0x55f141082ec0)
First inner Array:
  ARRAY(0x55f141082e18)
First Value of first inner Array:
  4
All Values of first inner Array:
  4/5/6
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67014450

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档