" Load the doxygen syntax
 let b:load_doxygen_syntax = 1
 
+augroup fswitch_cpp
+    au!
+    au BufEnter *.h   let b:fswitchdst  = 'c,cpp'
+    au BufEnter *.h   let b:fswitchlocs = '.,reg:|include.*|src|'
+    au BufEnter *.hpp let b:fswitchdst  = 'cpp,c'
+    au BufEnter *.hpp let b:fswitchlocs = '.,reg:|include.*|src|'
+    au BufEnter *.cpp let b:fswitchdst  = 'hpp,h'
+    au BufEnter *.cpp let b:fswitchlocs = '.,reg:|src|include/**|'
+augroup END
+
 let g:switch_custom_definitions =
     \ [
     \   ['EXPECT_FALSE', 'EXPECT_TRUE'],