C++ Formatting like Visual Studio C# formatting

I like the way Visual Studio (2008) formats C# code; unfortunately it seems it doesn't behave in the same way when writing C++ code.

For example, when I write a code in this way:

class Test {
public:
    int x;
    Test() {this->x=20;}
    ~Test(){}
};

in C# (ok this is C++ but you can understand what I mean), this part:

Test() {this->x=20;}

Will become:

Test() { this->x=20; }

This is obviously a stupid example, but there are a lot of things where putting brackets in correct position, indenting code and other things with my own hands becomes boring.

I can obviously change editor if you suggest me a good one for C++ code, I would like to find something with these features:

  • Intellisense (like vs, at least similar)
  • Custom class coloring (in C=C# they are cyan, why are they black in C++?)
  • Wordwrap (possibly)
  • Documentation when you mouse over a method/variable
  • Auto formatting (when you close a bracket like "}" in C# you'll get everything well formatted)

Obviously I can find other features, but this is what is in my mind at the moment.

Thanks for any suggestion.

Answers


I'm using AStyle extension for VS2012 and I'm happy with it. It's free :)


Select the code-text and press CTRL+K-F in Visual Studio - That's it :)


If you look at the Tools->Options->Text Editor settings you can control some of what you want, but I don't think as much as you'd like. Instead of changing editors, if the code style is that important, why not run it through a pretty printer? Check out this thread for ideas.


You'll struggle to find a much better editor than Visual Studio for writing c++ code. You will get used to it eventually. If you really cannot cope, then take a look at Visual Assist. It is a little pricey but it will beautify your code colours.


SlickEdit is a highly configurable editor and offers tagging functionality (what VS calls "Intellisense") that blows VS and Visual Assist out of the water. Plus there's a cool preview window that shows you the definition for the thing under the cursor, which is lightning fast (and you can turn off if you want).

I use vim these days, though, which is even more highly configurable, and I'll never go back. It's a little trickier to get configured well, though.


Need Your Help

Google Cloud Storage Error When Using Ampersand (&) in Filename on Dev Server

python google-app-engine google-cloud-storage google-cloud-platform

When saving a file using the Google Cloud Storage Python Client API on the development server, and the filename has an ampersand, the API throws an error.

The framerate of one movieclip slowly declines over time. What could cause this? [Flash CS3]

actionscript-3 flash-cs3

I'm creating a flash rhythm game. I have a looping (at a certain frame I have a gotoAndPlay) movieclip that contains the notes that scroll by, which loops for about three minutes. As the level prog...