VS2010开发.cpp与.c的注意事项


声明:引用请注明出处http://blog.csdn.net/lg1259156776/


强大的VS2010,正是由于vs2010的完全封装,让现在的windows程序开发变得简单易于操作的同时,也使得程序员渐渐地丧失了对整个程序开发流程的认识,甚至将一些概念给模糊、混淆了。比如今天说的这个问题就是,很多时候再进行算法验证的时候都是基于windows下VS2010进行开发,(matlab,python等解释性语言不说),从大二下学期真正开始到现在已经进行学习和开发将近4年,一直以来都没有注意到所选用的源文件上的区别,因为在VS2010下,几乎都是选择.cpp,C++的源文件,然后在编程的时候,通常是C和C++混编,或者说是在用C去写C++,因而在语法上都比较随意。除了在CCS或者Linux下真正写C文件的时候,才会真正的遵守C语言的规范。久而久之,就造成了一种错觉,认为是VS2010对这个开发环境支持C/C++混编,所以在使用.c文件作为工程的源文件的时候,仍然没有遵守C语言的规范,到处放置变量。而且甚至直接在C资源文件中引入了class的数据类型进行定义。虽然编译通过,但是一运行总是报莫名其妙的错误,害的我好久才找出这个问题,彻底的整改了一下最后完成了工程任务。

这只是针对今天遇到的调试问题进行的说明。

另一个VS2010屏蔽的事情就是CMake—make这些操作,而这对于程序员来讲都是必须要掌握的东西,也是在做多平台开源项目中所必需了解的。

最后就说明一个道理:事情都有两面性,便利是便利了,但是却在不知不觉中少知道好多东西。


2015-10-17调试记录 张朋艺

VS2010开发.cpp与.c的注意事项的更多相关文章

  1. C++ 开发OCX 的方法和注意事项

    C++ 开发OCX 的方法和注意事项 前言 ActiveX控件是一种实现了一系列特定接口而使其在使用和外观上更象一个控件的COM组件.ActiveX控件这种技术涉及到了几乎所有的COM和OLE的技术精 ...

  2. 在Sharepoint2010中发布VS2010开发的WebPart

    转:http://www.cnblogs.com/bfgl/archive/2012/03/22/2411698.html 本人接触Sharepoint2010到今天为止不到一个月.作为一名老C#程序 ...

  3. 最新OpenCV2.4.6与VS2010开发环境搭建

    OpenCV2.4.6与VS2010开发环境搭建 由于很久没有用OpenCV了,之前用的是1.0版本和VC++6.0.现在已经到了VS2010+OpenCV2.4.6.安装使用之后,发现OpenCV的 ...

  4. IIS服务器 远程发布(Web Deploy)配置 VS2010 开发环境 Windows Server 2008服务器系统

    原文:IIS服务器 远程发布(Web Deploy)配置 VS2010 开发环境 Windows Server 2008服务器系统 asp.net 网站有三种常用的发布方式:分别是拷贝开发机上发布好的 ...

  5. VS2010开发程序打包详解

    VS2010开发程序打包详解 转自:http://blog.sina.com.cn/s/blog_473b385101019ufr.html 首先打开已经完成的工程,如图: 下面开始制作安装程序包. ...

  6. PHP开发中需要注意几点事项,新手少走弯路必备知识

    这篇文章主要介绍了PHP开发需要注意的几点事项总结,非常详细,需要的朋友可以参考下.新手多看看避免走弯路. 1.使用内嵌的HTML代码,而不是PHP的echo语句. 因为PHP是一门嵌入式Web编程语 ...

  7. 利用VS2010开发一个跳转页面aspx

    在开发项目的过程中,由于要集成Cognos的报表通过URL,但是Cognos报表的本身URL长度过程,那么此时就需要开发一个跳转的页面,下面我们就采用VS2010开发一个跳转的页面Default.as ...

  8. vs2010开发activex(MFC)控件/ie插件(一)

    原文:http://blog.csdn.net/yhhyhhyhhyhh/article/details/50782904  vs2010开发activex(MFC)控件:      第一步:生成ac ...

  9. vs2010开发链接服务器出现错误(SourceSafe)

    用vs2010开发项目链接服务器时出现 之前是因为权限问题,每次打开项目文件时 ,都要先直接进服务器然后打开项目. 用了两天,又不行了.就这个问题已经问了了老大不下3次了. 其实很是不想再麻烦他老人家 ...

随机推荐

  1. HTML 008 head

    HTML <head> 查看在线实例 <title> - 定义了HTML文档的标题使用 <title> 标签定义HTML文档的标题 <base> - 定 ...

  2. MySQL 计算时间差函数 TIMESTAMPDIFF、DATEDIFF

    一.TIMESTAMPDIFF 支持天.小时.秒等 selet TIMESTAMPDIFF(hour,odl_time,now()); 计算old_time与现在时间的小时差. 二.DATEDIFF ...

  3. 十九.部署LNMP环境、构建LNMP平台、地址重写

    proxy client web1 web2   1.部署LNMP环境 1.1 部署nginx(前面已部署过) 1.2 部署mariadb ]# yum -y install mariadb mari ...

  4. pytz

    pytz django的模型类中使用的 DateTimeField 字段,自动添加下来的携带有时区信息,2019-06-19T03:58:11.937945Z 在我的逻辑中需要对时间进行比较,我使用了 ...

  5. 题解 CF375D 【Tree and Queries】

    首先,子树上的查询问题可以通过$DFS$序转为序列问题 再一看,没有修改,可以离线,这不就是莫队吗? 我们用$sum_i$表示出现次数$\geq i$的个数 用$val_i$表示第$i$种颜色的出现次 ...

  6. Centos7.x 安装 Supervisord

    [环境] 系统:Centos 7.3 软件:supervisord [安装Supervisord] yum install epel-release yum install -y supervisor ...

  7. PHP全栈学习笔记26

    php 验证码 <?php /* *@Author: 达叔小生 **/ header("Content-type:image/png"); // 发送头部信息,生成png图片 ...

  8. Navicat for MySQ中文破解版(无需激活码)

    原文链接:https://blog.csdn.net/a599174211/article/details/82795658 1.下载破解版Navicat for MySQ中文破解版 链接: http ...

  9. vue+elementui 开发的网站IE浏览器加载白屏(不兼容)解决办法

    1.需要检查一下 export default { name: 'aa',-------vue的name是不可以重复的-----这个是决定性原因 data() { return {} } 2.变量声明 ...

  10. 三十三、DNS资源记录类型和请求流程

    DNS分布均衡(Load balance)的实现 在上级数据库中写两条记录(同一个名字对应对个IP时),DNS会自动将请求基于轮循方式,分给每个DNS服务器 例如: 第一次将请求给第一个DNS,第二次 ...