zoukankan      html  css  js  c++  java
  • Visual Studio 在Cpp和头文件间切换的宏 (Alt + O)

    Visual Studio 在Cpp和头文件间切换的宏 (Alt + O)

    (see link: http://www.codeproject.com/KB/macros/SourceHeaderJumper.aspx)

    Introduction

    How many times c/c++ programmer swaps between source and header files? Hundreds times per a day! Simple macros in DTE essentially accelerates swapping action.
    Create new module, or use existing one, in my case "CommonMacros". To convenience, it is necessary link up this macros to hot key, see picture.

     VCE customizing panel

    Macros code

    Collapse Copy Code
        
    Option Explicit On
    Imports EnvDTE

    Public Module CommonMacros
    Sub SourceHeaderJumper()
    'splitted file name

    Dim SArr As System.Array
    'new filename generated by macros

    Dim NewFN As String
    'file name base (without extention)

    Dim FNBase As String
    'file extention

    Dim Ext As String
    'simple counter

    Dim i As Integer

    If DTE.ActiveDocument() Is Nothing Then
    Exit Sub
    End If
    SArr = DTE.ActiveDocument().Name().Split(".")
    'has file extention?

    If (SArr.GetLength(0) < 2) Then
    Exit Sub
    End If

    'file name base

    FNBase = DTE.ActiveDocument().Path()
    For i = 0 To SArr.GetLength(0) - 2
    FNBase = FNBase + SArr(i) + "."
    Next

    'file extention

    Ext = System.Convert.ToString(SArr(SArr.GetLength(0) - 1)).ToLower()

    'business logic

    If (Ext = "cpp") Or (Ext = "c") Then
    NewFN = FNBase + "h"
    Else
    If Ext = "h" Then
    NewFN = FNBase + "cpp"
    If Not System.IO.File.Exists(NewFN) Then
    NewFN = FNBase + "c"
    End If
    End If
    End If

    'if you don't want add file to tabs uncomment next line

    'DTE.ActiveDocument().Close()

    'opens needed file

    If System.IO.File.Exists(NewFN) Then
    DTE.ItemOperations.OpenFile(NewFN)
    End If
    End Sub

    End Module

    Conclusion

    Try this feature, this macros will save hours of you time during programming from month to month.

  • 相关阅读:
    Maven下载依赖项的源代码(source code)和Javadoc
    Spring读写xml文件
    重建二叉树
    从尾到头打印链表
    替换空格
    洞穴逃生
    二维数组中的查找
    分苹果
    最小生成树算法prim and kruskal
    HTTP报文格式详解
  • 原文地址:https://www.cnblogs.com/SunWentao/p/1699216.html
Copyright © 2011-2022 走看看