# 2.4.14 宏类型

Lisp 宏是用户定义的控制结构。宏可以极大的拓展 Lisp 语言。宏由类似表示函数的对象表示。但是，宏的参数传递语法和函数不同。Lisp 宏是一个列表，其列表的第一个元素是符号macro，然后余下的 CDR 部分是一个 lisp 函数对象，其中包含了符号 lambda。

lisp宏 对象通常由内置的 defmacro 来定义，不过任何以 macro 开头的列表都是宏，在Emacs中也一样。查阅 宏章节，以获取如何编写宏的只是。

警告：Lisp 宏 和 按键宏 完全是两码事。当我们说到宏的时候，我们通常是在说 Lisp宏，而不是按键宏。


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://emacs-lisp.ivory.cafe/lisp-shu-ju-lei-xing/bian-cheng-lei-xing/2.4.14-hong-lei-xing.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
