一、工具简介、基本界面和编程模式(包括命名法则)

2024-06-17 00:18

本文主要是介绍一、工具简介、基本界面和编程模式(包括命名法则),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.   VS2008工具栏的调整:

       a. 在菜单栏(就是有文件、编辑等选项的一行)或者工具栏(菜单栏下面一行)的空白位置右键即可自由添加(也可以选择自定义);

       b. VC++6.0调整工具栏的方式和VS2008相同,这不过添加之后都是以浮动窗口的形式显示,关闭后还是可以用相同的方式进行添加;

      

2.   VS2008集成环境中视图窗口的调整:

       a. 菜单栏中点击视图(View)即可选择需要添加的视图窗口;

       b. 一般需要添加比较重要的“资源视图”窗口,可以观察工作空间中的各个文件;


3.   将VC++6.0的程序转化到VS2008中的方法:

       a. 转化的障碍就是6.0编写的使用的都是多字节字符集,而VS2008使用的都是Unicode字符集;

       b. 在用VS2008打开一个VC++6.0编写的工程后,在菜单栏的项目中选择属性,然后在属性对话框中选择配置属性,再选择常规,将字符集设置成多字节字符集即可;


4.   VC++2008相对于VC++6.0的一些重要改进:

       a. 参数有效性检查:对于一些容易出错(特别容易越界)的函数的参数进行检查,比如strcpy函数,在2008中就会检查其参数(数组)是否会越界,如果会越界,则会警告(方法是设定一个非法参数导致警告);

       b. 迭代器越界检查:如果迭代器发生越界则会通过一个非法参数发出警告;

       c. 新增time_t类型:过去一直使用long类型表示系统时间(从1970年到某个时间的秒数),现在已经使用64位来表示时间了(即time_t类型),可以表示从1970年到3000年之间的时间了;

       d. for循环参数作用范围的约束:将其作用范围约束到for循环内而不像以前,其作用域是在for循环外的;


5.   打开功能介绍(在菜单来中的文件选项中):

       a. VC++6.0中的“打开”可以打开任何文件,而打开工作空间只能打开.dsw和.dsp文件;

       b. VS2008中的“打开”选项中还有多个选项可供选择,其中“打开文件”可以打开任何文件,而“打开项目/解决方案”只能打开.vcproj和.sln文件;


6.   类视图中各个图标的含义:

      a. 三个方格子代表类;

      b. 带锁的表示private的,带钥匙的表示protected的,什么都不带的表示public的;

      c. 一个红方格子表示成员函数;

      d. 一个白方格子表示成员变量;

      f.  一个方格子和b.结合起来表示public成员函数等;


7.   Windows编程模式简介:

       a. 模式主要有两种:

            *1. SDK编程,直接使用SDK函数进行编程,API函数大概有几千个,需要程序员记忆较多的函数,比较麻烦;

            *2. 包装SDK编程,将SDK函数包装进类中,再利用这些编写好的进行编程,最著名的就是MFC编程了,比SDK编程方便、容易很多;

       b. 大型程序一般使用MFC编程,而一些小型、简单程序使用SDK编程(包括Win32应用程序和Win32控制台应用程序);


8.   一个简单的Win32应用程序简介:

      a. 建立工程的时候选择Win32 Application即可,在step 1 of 1中选择“一个简单的Win32应用程序即可”;

      b. stdafx:

           i.   即Stadard Application Frame Extend的缩写,即标准应用程序框架扩展;

           ii.  StdAfx.h中已经包含了所有的Windows SDK的API接口,基本都在windows.h之类的文件中,而StdAfx.h就包含了这些头文件;

           iii. 用户使用规则就是将所有自己在程序中需要用到的头文件也都一并包含在StdAfx.h中,并且必须在所有.cpp文件中包含该头文件;

           iv. 因为所有SDK API的声明经过编译后将会非常庞大,因此为了节省空间和编译时间,通常是先编译StdAfx.h中的内容,方法就是将该头文件包含在StdAfx.cpp文件中,然后在编译其它文件之前先编译StdAfx.cpp文件,之后再编译其它文件时就不用再编译其中包含的StdAfx.h中的内容了,这样可以大大减少编译时间和空间,这个方法是Borland公司先想出来的,并且StdAfx.cpp在创建工程时就已经自动创建好了,里面就只有一句话:#include "StdAfx.h"

           v.  由于Windows SDK非常庞大和繁杂,因此StdAfx.cpp编译后生成的文件也必定是整个工程中最大的文件,其编译生成的文件是.pch文件,在编译其它文件时都会参考该文件,从而使编译速度提高,而不需要在每个文件中都编译一遍StdAfx.h中的内容;

           vi. 由于.pch文件仅仅是编译时的一个辅助文件,因此当工程编译完毕后可以删除该文件以流出更多的空间;

        注:由于Win32 Application不是控制台应用程序,在其中使用printf等控制台输入输出函数将不起作用,因为它是图形用户界面的!!!


9.   创建一个简单的单文档MFC应用程序:

       a. 创建工程的时候选择MFC AppWizard[exe],在step 1中选择单文档,其余都为默认选项;

       b. 生成文件简介:

            i.   只介绍其中三个最重要的文件;

            ii.  .dsp文件:工程文件;

            iii. .dsw文件:工作区文件;

            iv.  .rc文件:资源脚本文件;

            v.  这三个文件不能删除,也不能用文本编辑器打开(一旦打开就会受损);

            vi. 除这三个文件以外的其它文件,除了.cpp、.h文件,其余都可以删除,仅仅都是一些辅助文件;


10.  匈牙利命名法则:

         a. 是微软公司的通用命名法则;

         b. 由微软著名开发员查尔斯西蒙尼提出,由于其国际是匈牙利,因此该命名法称为匈牙利命名法;

         c. 法则内容:

              i.   标示符(包括函数和变量),都以小写字母或者单词缩写打头,用于表示类型,比如m_wndToolBar中的m_表示成员变量,wnd表示窗口类型;

              ii.  i.描述的是前缀,而前缀后面的是一个或多个以大写字母打头的单词,用以表示用途,上例中ToolBar表示其用途是工具条;

         d. 简单举例:int iX,中i表示int型变量,X表示用途或者就是一般意义上的变量名;

         e. 常用前缀:i→int,c→char,f→float,h→handle(句柄)、m_→成员变量、wnd→窗口等等;

这篇关于一、工具简介、基本界面和编程模式(包括命名法则)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1067954

相关文章

Golang的CSP模型简介(最新推荐)

《Golang的CSP模型简介(最新推荐)》Golang采用了CSP(CommunicatingSequentialProcesses,通信顺序进程)并发模型,通过goroutine和channe... 目录前言一、介绍1. 什么是 CSP 模型2. Goroutine3. Channel4. Channe

基于Python开发电脑定时关机工具

《基于Python开发电脑定时关机工具》这篇文章主要为大家详细介绍了如何基于Python开发一个电脑定时关机工具,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 简介2. 运行效果3. 相关源码1. 简介这个程序就像一个“忠实的管家”,帮你按时关掉电脑,而且全程不需要你多做

使用Python进行文件读写操作的基本方法

《使用Python进行文件读写操作的基本方法》今天的内容来介绍Python中进行文件读写操作的方法,这在学习Python时是必不可少的技术点,希望可以帮助到正在学习python的小伙伴,以下是Pyth... 目录一、文件读取:二、文件写入:三、文件追加:四、文件读写的二进制模式:五、使用 json 模块读写

基于C#实现PDF文件合并工具

《基于C#实现PDF文件合并工具》这篇文章主要为大家详细介绍了如何基于C#实现一个简单的PDF文件合并工具,文中的示例代码简洁易懂,有需要的小伙伴可以跟随小编一起学习一下... 界面主要用于发票PDF文件的合并。经常出差要报销的很有用。代码using System;using System.Col

redis-cli命令行工具的使用小结

《redis-cli命令行工具的使用小结》redis-cli是Redis的命令行客户端,支持多种参数用于连接、操作和管理Redis数据库,本文给大家介绍redis-cli命令行工具的使用小结,感兴趣的... 目录基本连接参数基本连接方式连接远程服务器带密码连接操作与格式参数-r参数重复执行命令-i参数指定命

Java中的Opencv简介与开发环境部署方法

《Java中的Opencv简介与开发环境部署方法》OpenCV是一个开源的计算机视觉和图像处理库,提供了丰富的图像处理算法和工具,它支持多种图像处理和计算机视觉算法,可以用于物体识别与跟踪、图像分割与... 目录1.Opencv简介Opencv的应用2.Java使用OpenCV进行图像操作opencv安装j

Python中的可视化设计与UI界面实现

《Python中的可视化设计与UI界面实现》本文介绍了如何使用Python创建用户界面(UI),包括使用Tkinter、PyQt、Kivy等库进行基本窗口、动态图表和动画效果的实现,通过示例代码,展示... 目录从像素到界面:python带你玩转UI设计示例:使用Tkinter创建一个简单的窗口绘图魔法:用

Python中构建终端应用界面利器Blessed模块的使用

《Python中构建终端应用界面利器Blessed模块的使用》Blessed库作为一个轻量级且功能强大的解决方案,开始在开发者中赢得口碑,今天,我们就一起来探索一下它是如何让终端UI开发变得轻松而高... 目录一、安装与配置:简单、快速、无障碍二、基本功能:从彩色文本到动态交互1. 显示基本内容2. 创建链

Python pyinstaller实现图形化打包工具

《Pythonpyinstaller实现图形化打包工具》:本文主要介绍一个使用PythonPYQT5制作的关于pyinstaller打包工具,代替传统的cmd黑窗口模式打包页面,实现更快捷方便的... 目录1.简介2.运行效果3.相关源码1.简介一个使用python PYQT5制作的关于pyinstall

使用Python制作一个PDF批量加密工具

《使用Python制作一个PDF批量加密工具》PDF批量加密‌是一种保护PDF文件安全性的方法,通过为多个PDF文件设置相同的密码,防止未经授权的用户访问这些文件,下面我们来看看如何使用Python制... 目录1.简介2.运行效果3.相关源码1.简介一个python写的PDF批量加密工具。PDF批量加密