`
k_lb
  • 浏览: 838058 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论
  • kitleer: 据我所知,国内有款ETL调度监控工具TaskCTL,支持ket ...
    kettle调度

c++语言的对象分配问题与java不太一样

 
阅读更多

A a;

其中A是一个类名,这样写是不是就已经给a分配了内存空间?

好像是吧,因为有a(1);

既然这样对,为什么还要用new 新建对象呢?原因可能是如果不用new,就会让编译器在作用域末尾才能释放空间和资源!!!

Aa;

以下是在问的问题:
其中A是一个类名,这样写是不是就已经给a分配了内存空间?


应该是已经调用了默认的构造函数了吧

已经分配了

调用了默认的构造函数

多谢,之前学的java,现在看c++的语法,所以有些不理解

如果a没有默认的构造函数就会出错


如果采用这种方法产生对象,是不是编译器就不用手动释放a的空间了?

没有new,就不用delete

这使用了栈空间

是的

这个是编译器自己控制对象的声明周期

哦thanks

分享到:
评论

相关推荐

    面向对象编程:C++与Java比较教程 英文版

    本书《面向对象编程:C++与Java比较教程》详细比较和对比了当今最流行的两种编程语言C++和Java,旨在教授互联网时代至关重要的技能和面向对象编程技术。作者Avinash C. Kak凭借其成功教授的课程,撰写了一本全面的...

    C++与java的综述与比较

    C++与Java都是面向对象的编程语言,Java从某种程度上来说是基于C++发展起来的,因此它们之间存在着诸多相似性和差异性。本文旨在对这两种语言进行一个全面的综述,并通过对比分析帮助读者更好地理解它们的特点以及...

    CPlus_to_Java_Converter;C++转java工具

    《C++到Java转换器:理解跨语言编程的挑战与实践》 在计算机科学领域,跨语言编程是一项关键技能,特别是在需要利用不同编程语言的优势时。C++和Java是两种广泛应用且具有各自特点的编程语言。C++以其高效、灵活和...

    Java与C_C++异同

    Java是由Sun Microsystems公司于1995年推出的一种完全面向对象的编程语言,而C和C++则分别诞生于20世纪70年代和80年代。Java在设计之初就借鉴了许多C++的特点,同时也抛弃了一些C++中的复杂特性,旨在提供一种更加...

    JAVA与C++简介

    JAVA 和 C++是两种广泛应用的编程语言,两者都是面向对象的,但在设计理念和实现机制上存在显著差异。本文将深入探讨这些区别。 首先,指针是C++中的核心概念,但在JAVA中则被严格限制。JAVA不直接允许程序员操控...

    JNA调用C++动态库,传入二维数组,通过C++返回二维数组,java调用C++完整案例

    在Java编程中,有时我们需要与C++库进行交互,特别是在处理底层系统操作或者利用已有的C++库资源时。Java Native Access (JNA) 是一个非常实用的框架,它允许Java程序直接调用本地(Native)代码,无需编写JNI(Java ...

    JAVA与C++的区别

    Java 和 C++是两种广泛应用的编程语言,它们都是面向对象的,但在许多方面存在显著的差异。以下是关于这两种语言区别的详细分析: 1. **语言背景**: - C++起源于C语言,旨在保留C的高效性并引入面向对象编程的...

    java与C++的区别

    如前所述,Java的垃圾回收机制自动处理不再使用的对象,而C++需要程序员通过new和delete来手动分配和释放内存,这可能导致内存泄漏或悬挂指针的问题。 (四)类型系统 Java有严格的类型检查,所有变量必须预先声明其...

    The diffenences bwtween Java and C++ (JAVA与C++区别)

    作为一种编程语言,Java具有简单性、面向对象性、不依赖于机器结构、可移植性、健壮性、安全性等特点,并为并发提供了机制,具有高性能。为了最大限度地利用其网络特性,Java小应用程序(applet)可以在网络上传输,...

    OOP语言技术比较:Java,C++,Object Pascal[1]

    标题和描述均提到了“OOP语言技术比较:Java,C++,Object Pascal”,这表明文章将对这三种面向对象编程(OOP)语言进行深入的技术对比分析。OOP是现代软件开发的核心概念之一,它通过封装、继承、多态等特性提供了...

    数据结构 C C++ JAVA

    C、C++ 和 Java 都是广泛用于实现数据结构的编程语言,每种语言都有其独特的特性和优势。 在C语言中,由于其低级特性,可以直接对内存进行操作,这使得C语言在实现数据结构时更加灵活,但同时也需要开发者具有较高...

    jni对象获取,使用jni从c++里获取Java对象

    在Android开发中,JNI(Java Native Interface)是一个关键的技术,它允许Java代码和其他语言写的代码进行交互。JNI在很多场景下都非常有用,比如性能优化、调用系统底层库或者访问硬件资源等。本主题主要关注如何...

    C++调用java方式

    4. **Java类和方法ID**: 在C++中,需要获取Java类的Class对象和方法的MethodID,以便正确调用Java方法。 **C++调用Java的步骤** 1. **初始化JVM**: C++程序需要启动Java虚拟机,并找到要调用的类所在的类装载器。 2...

    C++JAVA内存分配.pdf

    在C++和Java这两种不同的编程语言中,内存分配机制有着显著的区别。让我们深入探讨一下这两种语言的内存分配策略。 在C++中,内存被划分为以下几个区域: 1. **栈(Stack)**:栈内存主要用来存放程序执行过程中的...

    数据结构算法与应用 C++和Java语言描述 含代码 Sahni 一二版中英合集

    本书"数据结构算法与应用 C++和Java语言描述 含代码 Sahni 一二版中英合集"深入探讨了这些核心概念,提供了两种广泛使用的编程语言——C++和Java的实现。作者Sahni以其清晰的解释和丰富的实例,帮助读者深入理解数据...

    C++与Java比较.doc

    而C++允许全局变量和函数的存在,这与面向对象的理念不太一致。 4. **自动内存管理**:Java具有内置的垃圾回收机制,可以自动清理不再使用的对象,减轻了开发者的负担。C++则需要手动管理内存,增加了编程的复杂性...

    C++,java,Go等语言性能对比

    通过对 C++、Java、Go 和 Scala 在容器类、循环结构、内存/对象分配方案等方面的比较,我们可以看出每种语言都有其独特的优势和局限性。选择合适的编程语言应该基于具体的应用场景、性能需求以及开发团队的经验和...

    从C++转到Java需注意的地方

    从C++过渡到Java,开发者需要注意以下几个关键点,以便更好地适应纯面向对象的Java编程。 1. **内存管理与垃圾回收** 在C++中,程序员需要手动进行内存分配和释放,而Java则采用了自动垃圾回收机制。Java的垃圾...

    java转C++,专用工具类

    Java转C++是一种技术,主要用于将已有的Java代码转换为C++代码,以便在不支持Java虚拟机(JVM)的环境中运行或者为了利用C++的特定性能优势。本项目提供了一个专用工具类,用于自动化这个过程。下面将详细介绍这个...

    C++连接java

    JNI是Java平台的一部分,它为Java代码和其他语言编写代码提供了一个标准接口,使得C++能够调用Java的方法,反之亦然。 首先,我们需要理解JNI的核心概念。JNI提供了一组头文件和库,让C/C++程序员可以在本地代码中...

Global site tag (gtag.js) - Google Analytics