---
source_url: https://docs.dolphindb.cn/zh/error_codes/S06003.html
fetched_at: 2026-05-19T09:11:27Z
category: error_codes
title: S06003
sha1: 337dbe946dd49fa802801057e8b5ab98bb36ec78
---

# S06003

## 错误代码

S06003

## 报错信息

Not allowed to define a named function [XXX] within another function. RefId:
S06003

## 错误原因

这个报错与嵌套定义命名函数的错误用法有关。关于命名函数，参考：[命名函数](../progr/named_func.html)。

在命名函数定义里，不能再嵌套定义命名函数，否则会报这个错误，比如：

```dolphindb
def f1() { 
    def f2() { // 报错 
        return "Hello" 
    } 
    return f2() 
}
```

## 解决办法

1. 把嵌套的命名函数改成匿名函数（推荐使用此方案）：

   ```dolphindb
   def f1() {
       f2 = def () { // 定义匿名函数 
           return "Hello" 
       } 
       return f2() 
       }
   ```
2. 把嵌套的函数移到全局作用域下（请谨慎考虑使用此方案）：

   ```dolphindb
   def f2() { 
       return "Hello" 
   } 

   def f1() {
       return f2() 
   }
   ```

关于匿名函数，参考：[匿名函数](../progr/anonym_func.html)。
