This is indeed possible, but only if you have the right infrastructure in place on both Windows and Linux (or some other kind of * nix). I worked at an investment bank, where almost all the work was done on Windows with VC ++, and then switched to Solaris and recompiled. This allowed us to use much more advanced (on top of Solaris) Windows tools. And we are talking about creating multi-level multi-threaded servers here.
However, in order to make it work, they put in a huge effort (I think about 15 man-years) from the point of view of older developers. And it was worth it, because Solaris development tools are pants (but Linux is actually pretty good). This is not something that you, as an individual developer, will be especially comfortable doing if you are not writing general command line utilities. In this case, you can do this - I will regularly recompile my Windows command line projects to Linux.
source share