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.

  • The impact of a data loss event can be significant. Real-time data is essential to remaining competitive. Many companies can no longer afford to rely on a truck arriving each day to take backup tapes offsite. For most companies, a cloud backup and recovery solution will eliminate, or significantly reduce, IT resources related to the mundane task of backup and allow your resources to be redeployed to more strategic projects. The cloud - can now be comfortable for you – with 100% recovery from anywhere all …

Most Popular Programming Stories

More for Developers

Latest Developer Headlines

RSS Feeds