Custom Comment-Out Macro

I think that sometimes commenting source code can be cause of great mess if we don't write WHY we are commenting it and, for istance, whether it is a temporary action or it is supposed to be definitive. This is particularly true when you work in team and you dare to hope to understand what is happening around you (no hopes! ;-) ).

For this reason it can be useful to insert comments like this

// Commented by Ilic On 31/7/00   CString Message;
// Commented by Ilic On 31/7/00   Message.Format(_T("Useless message"));
or this
// Moved to AnotherLibray	MyClass *Ptr;
// Moved to AnotherLibray	Ptr->SolveAllMyProblems();
This is possible with the included Macro. Comment is divided in three parts:
  1. the CommentType (//, ', # and so on), which was already beautifully mastered by Adam Solesby.
  2. The Comment itself, i.e. the sentence you want to be written near your commented code.
  3. The comment delimiter, which separates your sentence from the code. It is set by default as a vTab, but you can change it to whatever you want,obtaining e.g.
    // Moved to AnotherLibray --> MyClass *Ptr;
    // Moved to AnotherLibray --> Ptr->SolveAllMyProblems();
    
The ChangeCustomComment() macro allows you to change the sentence you want to put in next comment, whereas InsertCustomComment() is simply the extension of Adam Solesby's macro. You can change your comments as many times as you want, and you should always be able to Uncomment code, no matter whether the sentence in the comment you want to delete is the same of the "active" one or not. On the countrary you shouldn't change the comment delimiter once you have chosen one, or the macro want be able to recognize comments anymore (nobody's perfect...)

Downloads

Download source - 3 Kb


Comments

  • There are no comments yet. Be the first to comment!

Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • With JRebel, developers get to see their code changes immediately, fine-tune their code with incremental changes, debug, explore and deploy their code with ease (both locally and remotely), and ultimately spend more time coding instead of waiting for the dreaded application redeploy to finish. Every time a developer tests a code change it takes minutes to build and deploy the application. JRebel keeps the app server running at all times, so testing is instantaneous and interactive.

  • Given today's threat environment and the increasing connectivity of digital infrastructures, security teams now realize that they must assume their IT environments are subject to periodic compromise. Gone are the days when preventive measures to secure the perimeter or trying to detect malware problems using signature-match technologies were enough. New practices based on an understanding of the phases of an attack, continuous threat monitoring, and rapid attack detection and remediation are necessary. This …

Most Popular Programming Stories

More for Developers

Latest Developer Headlines

RSS Feeds