À propos de l'effondrement d'un bloc de code dans Visual Studio en utilisant la région #pragma

dans VisualStudio, quand vous écrivez une fonction elle peut s'effondrer en contours, tout le monde le sait. Vous pouvez également utiliser #pragma region et #pragma endregion pour spécifier manuellement une région de code afin qu'elle puisse s'effondrer. Cependant j'ai trouvé un problème que, si des blocs de code effondrés sont dans le #pragma region , ils ne peuvent plus s'effondrer. Est-il un moyen de le résoudre?

<codefuncA()</code,<codefuncB()</code, <codefuncC()</code can be collapsed

After I add <code#pragma region</code, they cannot collapse independently.

2
demandé sur C. Wang 2014-01-08 23:19:53

2 réponses

il y a plusieurs autres moyens aussi meilleurs et flexibles que #pragma region vous pouvez faire pour réduire le code en VS:

Méthode 1: Utiliser {...} à la place qui prend nativement en charge le code de l'effondrement de VS.

  1. activer l'option Tools->Text Editor->C/C++->Formatting->OutLine Statement Blocks->True .

  2. mettez votre dans différents scopes {...} , puis il va s'effondrer le code dans différents scopes:

    enter image description here


Méthode 2: utilisez des raccourcis clavier pour réduire le code que vous voulez:

  • CTRL + M + O s'effondrera tout.

  • Ctrl + M + L permettra de développer tous les.

  • Ctrl + M + P élargira tout et désactivera les contours.

  • CTRL + M + M sera de développer/réduire la section en cours.


il est digne de noter que la méthode #1 fonctionne mieux pour les snippets de code simple. Pour les fonctions, parce que semblable à cela nous ne pouvons pas avoir des fonctions à l'intérieur des fonctions dans C++ , nous ne pouvons pas mettre des fonctions dans le champ défini par {...} . Heureusement, nous pouvons toujours utiliser la méthode #1 pour les fonctions en créant des namespaces pour chaque scope. Ou tout simplement, utilisez la méthode #2.

9
répondu herohuyongtao 2017-05-23 11:53:34

Oui, ce problème existe pas

une solution qui fonctionne parfois est d'utiliser les contours -> s'effondrer aux définitions, puis re-étendre chaque bloc.

0
répondu Digital_Reality 2014-01-08 20:03:17