开发者

Visual Studio add-on to tag code segments?

I wonder if there exists any add-on for VS that can substitute/tag some lines of code with a descriptive text of my choice ?

Ideally a function like the one below :

bool CreateReportFiles(LPCTSTR fn_neighbours, ULONG nItems, ULONG* items)

{

// Read from file

CFile cf_neighbours;

if (!cf_neighbours.Open(fn_neighbours, CFile::modeRead))

  return false;

cf.Read(items, sizeof(ULONG) * nItems);

cf.Close();




// Create reports

DoRe开发者_如何学JAVAport_1(items, nItems);

DoReport_2(items, nItems);

DoReport_3(items, nItems);

FinalizeReports();

}

...would look similar to this :

bool CreateReportFiles(LPCTSTR fn_neighbours, ULONG nItems, ULONG* items)

{

± Read from file

± Do the reports

}

The ± signs would expand / collapse the substituted lines.

Other workarounds also considered !

Thanks for your help !


The region functionality does pretty much precisely what you describe, and is built into Visual Studio.

The following will compress as you described:

bool CreateReportFiles(LPCTSTR fn_neighbours, ULONG nItems, ULONG* items)

{

#pragma region ReadFile
// Read from file

CFile cf_neighbours;

if (!cf_neighbours.Open(fn_neighbours, CFile::modeRead))

  return false;

cf.Read(items, sizeof(ULONG) * nItems);

cf.Close();

#pragma endregion ReadFile

#pragma region CreateReports

// Create reports

DoReport_1(items, nItems);

DoReport_2(items, nItems);

DoReport_3(items, nItems);

FinalizeReports();

#pragma endregion CreateReports
}


In addition to Ryan's answer, I should probably point out that this is possible in the language itself.

bool CreateReportFiles(LPCTSTR fn_neighbours, ULONG nItems, ULONG* items)
{
    ReadFromFile(fn_neighbours, nItems, items);
    CreateReports(items, nItems);
}

I personally prefer this to regions. It is also more straightforward to see that you're not returning any value from the function.

In Visual Studio, you can use F12 to jump to the function's definition.


The simplest solution, and the one I would advice you to use is creating functions ReadFile and CreateReports. This would be a better design, as well, and has the additional benefit of working in all possible IDEs and languages.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜