
# 设置不同的断点
断点定义了源代码中程序执行应停止的位置。CodeArts IDE支持多种类型的断点，可以通过单击编辑器行号边缘、使用边缘的上下文菜单或在"**运行和调试** "视图的"**断点**"部分中进行切换。
#### 行断点
行断点是常规的断点类型，当程序执行到设置有断点的行时，程序会暂停执行。
1. 在编辑器行号边缘单击需要设置断点的行。或右键单击，从上下文菜单中选择"**添加断点** "。
   
   图1添加断点   
   ![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002342496178.png)
   
   
2. 行断点添加完成后在编辑器边缘以圆形图标 (![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002368468781.png)) 表示：
   
   图2行断点添加完成后   
   ![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002368308921.png)
   
   
 
#### 条件断点
CodeArts IDE调试器允许您根据任意表达式或命中次数设置条件断点。
1. 在代码编辑器中，右键单击所需行边缘，从上下文菜单里选择"**添加条件断点** "。
   
   图3添加条件断点   
   ![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002376494437.png)
   
   
2. 在打开的行内编辑器中，在列表里选择条件类型。 
   - **表达式**：当表达式计算结果为"true"时命中断点。
   
   - **命中次数** ：断点需要命中指定的次数才能暂停程序执行。
     图4选择条件类型   
     ![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002342776800.png) 
   
   
   
   
3. 输入条件并按下**Enter**键。
![](https://support.huaweicloud.com/usermanual-codeartside/public_sys-resources/note_3.0-zh-cn.png)
也可以向常规行断点添加条件或命中计数。右键单击编辑器边缘中的断点，然后从上下文菜单中选择所需的操作。
#### 记录点
记录点也是一种断点，但被触发时不会暂停程序执行，而是将一条消息记录到控制台。
1. 在代码编辑器中，通过右键单击想要设置记录点的行的编辑器边缘，并从上下文菜单中选择"**添加记录点** "。
   
   另外，也可以在主菜单中选择"**调试** "\> "**新建断点** "\> "**内联记录点**"。
   在编辑器边缘，记录点用一个圆形图标（![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002358770502.png)）表示。
   图5添加记录点   
   ![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002392410477.png)
   
   
2. 随后会打开一个预览编辑器，在其中输入当记录点被触发时应该记录的消息。日志消息可以是纯文本，也可以是包含在大括号（"{}"）中需要求值的表达式。
![](https://support.huaweicloud.com/usermanual-codeartside/public_sys-resources/note_3.0-zh-cn.png)
与常规断点一样，记录点可以被启用或禁用，也可以由条件或触发次数来控制。如果设置了条件或触发次数，则只有当条件为真或达到触发次数时，才会记录消息。
#### 函数断点
除了直接在源代码中放置断点外，还可以通过指定函数/方法名来创建断点，程序执行在进入指定的函数时将会暂停。
1. 单击CodeArts IDE底部面板中的"**运行和调试** "按钮（![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002368308949.png)），或者按下 "Ctrl+Shift+D" / "Shift+Alt+F9"（IDEA快捷键） / "Alt+5"（IDEA快捷键） / "Ctrl+Shift+F8"（IDEA快捷键），打开"**运行和调试**"视图。
2. 在"**断点** "部分视图的工具栏中，单击"**添加函数断点** "按钮（![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002334270790.png)），或在主菜单中选择"**调试** "\> "**新建断点** "\> "**函数断点**"。
3. 输入所限定函数的完整名称，按"Enter" 键。 
   函数断点将在"**运行和调试** "视图的"**断点** "部分视图里以三角形图标（![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002392290585.png)）表示。
   图6添加函数断点   
   ![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002377815013.png)
   
   
 
#### 异常断点
CodeArts IDE调试器支持异常断点，每当抛出异常时，都会暂停程序执行。异常断点是应用于全局的，不需要特定的源代码引用。
1. 单击CodeArts IDE底部面板中的"**运行和调试** "按钮（![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002368308937.png)），或按下 "Ctrl+Shift+D" / "Shift+Alt+F9"（IDEA快捷键） / "Alt+5"（IDEA快捷键） / "Ctrl+Shift+F8"（IDEA快捷键）来打开"**运行和调试**"视图。
2. 展开"**断点** "部分，并勾选你想要设置的异常断点旁边的复选框。
   
   图7添加异常断点   
   ![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002377814405.png)
   ![](https://support.huaweicloud.com/usermanual-codeartside/public_sys-resources/note_3.0-zh-cn.png)
   CodeArts IDE提供了几种类型的异常断点，这些断点定义了抛出时会导致程序执行暂停的特定异常。
   - **抛出异常**：任何抛出的异常，无论是否被捕获。
   
   - **未捕获的异常**：任何被抛出且未被捕获的异常。
   
   - **用户未捕获的异常**：源自用户代码（而非库）的任何未捕获异常。
    
   
   
 
#### 内联断点
内联断点仅在执行到达与内联断点关联的列时触发。这在调试压缩代码时特别有用，因为压缩代码可能包含单行中的多个语句。
1. 在主菜单中选择"**调试** "\> "**新建断点** "\> "**内联断点** "，或者在调试会话期间使用上下文菜单。
   
   图8添加内联断点   
   ![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002358610594.png "点击放大")
   
   
2. 内联断点会直接在编辑器中内联显示。 
   图9内联显示   
   ![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002358770510.png)
   
   
3. 对内联断点设置条件，编辑一行上的多个断点，使用编辑器边缘的上下文菜单。 
   图10编辑断点   
   ![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002392410485.png)
   
   
 
#### 禁用断点
您可以禁用单个断点，或者一次性禁用所有断点。
要禁用单个断点，请执行以下操作之一：
- 在编辑器边缘中，右键单击断点，并从上下文菜单中选择"**禁用断点** "。
  图11禁用断点   
  ![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002343783174.png) 
- 在"**运行和调试** "视图的"**断点** "部分视图，取消勾选您想禁用的断点旁边的复选框。
  图12勾选禁用的断点   
  ![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002343800494.png) 
要一次性禁用所有断点：
在"**运行和调试** "视图的"**断点** "部分，单击"**切换激活断点** "工具栏按钮（![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002368468809.png)）。
图13禁用所有断点   
![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002343959478.png)
#### 删除断点
您可以删除单个断点，或一次删除所有断点。
要删除单个断点，请单击编辑器边缘中的断点。要一次删除所有断点，请在"**运行和调试** "视图的"**断点** "部分视图的工具栏中，单击"**删除所有断点** "按钮 (![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002368308953.png))。
图14删除断点   
![](https://support.huaweicloud.com/usermanual-codeartside/zh-cn_image_0000002343961354.png)
