`

发现C++的错误确实比Java的要难以调试 VS 重构的技巧

阅读更多

问题是这样的,首先我在all_my_func.h头文件中做了如下定义,红色的部分少了一个分号。

 

#ifndef _ALL_MY_FUNC_H
#define _ALL_MY_FUNC_H

int test_list_80()

#endif /* _ALL_MY_FUNC_H */

另一个文件中这样使用。

#include "all_my_func.h"
#include <iostream>
using namespace std;

int main(int argc, char** argv) {
        test_list_80();
};

 

结果编译的时候发现了一些奇奇怪怪的错误,试着将上面蓝色部分注释掉,因为我根本没有使用iostream,发现错误成了另一堆,还是看不懂,再注释掉红 色的不错,错误信息又变了一堆,而所有这些原因都出在哪一个分号上,这种include出来的问题,还好java里面不会发生了。

 

排查这种错误的时候,重构的小步前进的思想派上了用场 ,在写下刚才那部分代码的时候,只改动了两个地方,所以我很容易的便找到了这个bug,

 

以前在学校里什么都没有体会,今天工作了才发现,重构对我这样毛毛愣愣的程序员是多么的重要。

分享到:
评论
1 楼 wjason 2009-02-11  
今天重温了这篇,
可惜同baidu搬家过来之后, 丢失了发表时间.

想象不到我当时所处的场景了.

相关推荐

    C++转Java工具

    C++转Java工具的工作原理可能包括语法解析、类型映射和代码重构等步骤。它会读取C++源代码,识别其结构和元素,然后根据Java的语法规则和类库将其转换。例如,C++的类会被转换为Java的类,指针会映射到Java的对象...

    重构-改善既有代码设计

    《重构-改善既有代码设计》是一本专注于软件开发过程中代码优化和重构的权威书籍,尤其对Android、Java、C和C++等编程语言的开发者具有很高的参考价值。本书旨在通过详细的实例和深入的分析,教导读者如何有效地改进...

    在什么情况下Java比C快?Java开发Java经验技巧共

    7. **开发效率**:Java有丰富的开源库和强大的开发工具,如IDEA和Eclipse,这些工具提供了代码自动完成、调试和重构功能,提高了开发效率,间接减少了性能瓶颈的出现。 8. **平台无关性**:“一次编写,到处运行”...

    代码查看工具(C,C++,JAVA,.NET代码查看工具)

    对于JAVA,标准的代码查看工具有Eclipse、IntelliJ IDEA等,它们提供了强大的代码导航、调试和重构功能。同时,像Javadoc这样的文档生成工具也能帮助查看和理解代码结构。而在.NET平台上,Visual Studio是最常见的...

    程序设计实践---C/C++/JAVA

    ### 程序设计实践——C/C++/JAVA:风格的重要性 #### 1. 引言 本书旨在探讨程序设计实践中的重要性及其在实际应用中的体现,特别是针对C/C++和Java等语言的编程实践。书中强调了良好的程序设计风格对于编写高质量...

    利达调试码助手30天利达调试码助手30天

    它支持多种编程语言,包括但不限于Java、C++、Python、JavaScript等。 2. **实时监控**:该助手提供实时代码执行监控功能,可以在程序运行过程中追踪变量的变化,帮助开发者理解代码执行流程,及时发现潜在问题。 ...

    SourceMonitor: 代码重构的小工具,大用场

    1. **代码统计**:SourceMonitor可以精确地统计项目中每种语言(如C++、Java、C#等)的源代码行数,包括实际代码行、注释行以及空行。这对于项目管理和成本估算非常有价值。 2. **复杂性分析**:工具能够计算每个类...

    eclipse开发c/c++环境配置

    Eclipse是一款广泛使用的开源集成开发环境(IDE),它支持多种编程语言,包括Java、Python、C和C++。对于C/C++开发者来说,Eclipse通过一个名为C/C++ Development Toolkit (CDT) 的插件提供了强大的开发环境。下面将...

    vc和java编程小技巧锦集

    在编程世界中,VC(Visual C++)和Java都是广泛使用的编程语言,它们各自拥有独特的特性和优势。这篇文档集合了VC和Java编程的一些小技巧,旨在帮助开发者提高效率,解决实际问题。以下是对这些小技巧的详细解读: ...

    Microsoft Visual Studio Pro 2019_java_C++_python_visualstudio201

    **Microsoft Visual Studio Professional 2019** 是一款强大的集成开发环境(IDE),它由微软公司推出,专为软件开发者提供全面的工具和服务,支持多种编程语言,包括Java、C++和Python。在这个版本中,Visual ...

    004 Java学习 | Java语言概述

    9. **语法简洁**:Java的语法简洁明了,与C/C++相似但更注重安全性,减少了编程时的常见错误。 10. **模块化系统**:从Java 9开始,引入了模块化系统(Project Jigsaw),使得大型项目的组织和管理更为清晰和高效。...

    用Eclipse平台进行C/C++开发

    Eclipse CDT(C/C++ Development Tools)是Eclipse专门为C和C++开发者提供的扩展,提供了丰富的功能来帮助进行C/C++项目的开发、调试和管理。下面将详细介绍在Eclipse平台上进行C/C++开发的相关知识点。 1. **...

    ubuntu下C++开发环境汇总

    Ubuntu 下 C++ 开发环境汇总 在 Ubuntu 环境下进行 C++ 开发时,选择合适的开发工具是非常重要的。以下是 Ubuntu 环境下常用的 C++ 开发工具: 1. Eclipse Eclipse 是一款跨平台的集成开发环境(IDE),支持 ...

    ### Java:信息、使用技巧和优缺点

    ### Java:信息、使用技巧和优缺点 #### 信息概览 Java 作为一种跨平台、面向对象的编程语言,自1995年由 Sun Microsystems(现已成为 Oracle Corporation 的一部分)推出以来,在全球范围内获得了广泛的应用和支持...

    商业编程-源码-编译与调试技巧源代码 MsgTracer.zip

    《商业编程:源码、编译与调试技巧详解》 在商业编程中,源码、编译和调试是至关重要的环节。MsgTracer项目提供的源码为我们提供了深入了解这些技巧的宝贵资源。源码是程序员的心血结晶,是软件的基础,而编译与...

    eclipse编译C++的插件

    Eclipse是一款广泛使用的开源集成开发环境(IDE),主要用于Java编程,但通过添加特定的插件,它也可以支持其他编程语言,比如C++。本篇文章将详细介绍如何在Eclipse中安装和使用C++编译器插件,以满足Windows 7用户...

    C++Programming HOW TO

    ##### 1.1 C++ vs Java C++和Java都是现代编程语言中的佼佼者,但它们的设计理念和应用场景有所不同: - **C++** 是一种编译型语言,程序运行效率高,可以直接操作硬件资源,适合开发操作系统、游戏引擎等高性能...

    java基础教程

    从给定的文件片段来看,这是一篇关于Java基础教程的文章,尽管原文中包含了一些乱码和非标准字符,但可以推断出文章试图涵盖Java编程语言的基础概念、语法、环境搭建以及一些高级主题。下面将对这些知识点进行详细的...

    C++ 语言大全.rar

    9. **调试技巧**:学会使用调试工具如GDB或Visual Studio的调试器,能够有效地查找和修复程序中的错误。 10. **性能优化**:C++允许低级别的优化,如手动调整内存布局、使用内联函数和无锁编程技术,以提高程序性能...

Global site tag (gtag.js) - Google Analytics