1

perlタスクモジュール内のハッシュの次のハッシュを次のように考えてください

package taskmoduleName; 
use vars qw( %hash);  
%hash = ( 
 'x1' => {  'fruits' => { 
               'candiedfruit' => {  
                   'sugarcoated' => {
                       'fruitname1' => 'grapes',  }, },   
                   'chocolatecoated' {  
                       'fruitname2' => 'cherries', }, },},    
            'vegetables' => {  
                 'fried' => {  
                    'salted' => {     
                       'veg1' => 'banana', }, }, },
'x2' => {    'xyz' => 
                  'xyz1 => 'hhh', },}, );

外部の perl ファイルを介して操作することにより、元のハッシュ内の任意の場所に新しいキーと値のペアを追加するにはどうすればよいですか? PS新しいエントリを追加する以外は、元のファイルの他のものを変更したくありません

4

1 に答える 1

0

他のファイルでは、次のようなことができます。

use taskmoduleName;
$taskmoduleName{x1}{fruits}{long}{name} = 'rhubarb';

ただし、これは脆弱で保守が困難なコードになる可能性が高く、実際にはお勧めできません。

なぜこのようなことをする必要があるのですか?ここにいる誰かが別のアプローチを考えるかもしれません。

于 2013-02-14T14:04:04.457 に答える