语言相关

JAVA:

1.问题:

public boolean returnTest() {
    try {
    return true;
    } catch (Exception e) {
    } finally {
        return false;
        }
}

以下代码返回值是什么?

true

false

解答:

参考这里 http://docs.oracle.com/javase/specs/jvms/se7/html/jvms-4.html#jvms-4.10.2.5

我的理解:

1、首先执行到try里的return,但是有finally语句还要执行,于是先执行return后面的语句,例如(x++),把要返回的值保存到局部变量。

2、执行finally语句的内容,其中有return语句,这时就会忽略try中的return,直接返回。

测试代码:

public static int returnTestInt() 

{ int a = 0; 

try { return a++; } 

catch (Exception e) { 

} finally { return ++a; } 

}

上面的代码,在我的机器上返回结果是2.

于是本题就很简单了,选择false。

C++:

1.问题:

已知const char * node="ABC";下列语句合法的是___.

node[2] = ‘k‘;

*node[2]=‘k‘;

*node = "xyz";

node="xyz";

解答:

答案:D

const char * node="ABC"

这是一个指向字符常量的指针,也就是 *node 的值不能被改变

A, node[2] = ‘k‘;更改coust类型的值,编译不通过

B,*node[2]这种写法本身就是错误的

C,*node = "xyz"; 前面说了,*node的值不能改变

D,node是指针类型,node指向的内容不能改变,但是node指针本身可以改变

node="xyz";这里是让node指向“xyz”的首地址

2.问题:

虚函数,指针指向子类地址就调用子类地址,指向父类地址就调用父类函数:

引入原因:为了方便使用多态特性,我们常常需要在基类中定义虚函数。

class Cman 

{ 

public: 

virtual void Eat(){……}; 

void Move(); 

private: 

}; 

class CChild : public CMan 

{ 

public: 

virtual void Eat(){……}; 

private: 

}; 

CMan m_man; 

CChild m_child; 

//这才是使用的精髓,如果不定义基类的指针去使用,没有太大的意义 

CMan *p ; 

p = &m_man ; 

p->Eat(); //始终调用CMan的Eat成员函数,不会调用 CChild 的 

p = &m_child; 

p->Eat(); //如果子类实现(覆盖)了该方法,则始终调用CChild的Eat函数 

//不会调用CMan 的 Eat 方法;如果子类没有实现该函数,则调用CMan的Eat函数 

p->Move(); //子类中没有该成员函数,所以调用的是基类中的
时间: 2024-10-09 10:31:51

语言相关的相关文章

Go环境搭建、Sublime Text 3 安装Go语言相关插件gosublime

Go 语言环境安装 1.brew install go 默认安装,被安装了/usr/local/Cellar/go 目录并自设置了环境变量. 2.go env 可查看目前的go的环境变量 3.配置一个GOPATH环境变量,是工作目录. 根据约定,GOPATH下需要建立3个目录: bin 存储编译后的可执行文件 pkg 存放编译后生成的包文件 src 存放项目的源码 我把GOPATH建立在/Users/xinshaofeng/Study/gowork vi ~/.bash_profile 加入:e

C语言相关的经典书籍

真心经典:每个行业或者领域都有一些东西是不会随时间而逐渐消逝,以下的就是. <C语言程序设计>(第2版.新版)/<The C Programming Language> <C语言核心技术>/<C in a Nutshell> <代码大全>/<Code Complete> 底层相关:由于C语言之初是为了编写操作系统而来得,所以对底层的操作目前尚无任何其他语言可以替代.介于以上情况,再往下走一层是必要的. < 深入理解计算机系统(原

Django模板语言相关内容

Django模板系统 官方文档:https://docs.djangoproject.com/en/1.11/ref/templates/builtins/#std:templatetag-for 常用语法 只需要记两种特殊符号: {{  }}和 {% %} 变量相关的用{{}},逻辑相关的用{%%}. 变量 {{ 变量名 }} 变量名由字母数字和下划线组成. 点(.)在模板语言中有特殊的含义,用来获取对象的相应属性值. 几个例子: view中代码: def template_test(requ

C语言相关图书推荐

C Primer Plus(第5版 中文版) 作      者 [美] 普拉塔(Prata S.) 著:云巅工作室 编 出 版 社 人民邮电出版社 出版时间 2005-02-01 版      次 1 页      数 626 印刷时间 2005-02-01 开      本 16开 纸      张 胶版纸 印      数   I S B N 9787115130228 推荐指数:★★★★★ 购买地址:立即购买 图灵程序设计丛书:嗨翻C语言 作      者 [美] David Griffi

c语言相关知识点解析

本文介绍如何使用c语言 运行环境 vs2017,ctrl + F5 运行程序 目录 初识 常量和变量 标识符 数据类型 运算符 输入输出语句 流程控制语句 变量和函数的属性 指针 结构体 结构体在数据结构中的使用 共用体类型 typedef关键字的使用 文件操作 初识 c程序基本结构 #include "stdafx.h" // 指定头文件,想使用函数库中的函数必须指明 int main() // 程序入口 { int a = 111, b = 222, sum; sum = a +

做嵌入式,C语言相关的朋友不要错过

前言 相对来讲嵌入式相关的人群总体来说比较少,那么有没有一个聚集地呢? 为回馈读者,「编程珠玑」与「嵌入式linux」,「EmbeddDeveloper」三个公众号联合组织了此次福利活动,「编程珠玑」将送出高质量书籍七本,极客时间价值99元阅码两个,「嵌入式linux」送出小米手环3两个,高质量书籍一本,而「EmbeddDeveloper」将送出高质量书籍五本. 规则 本次活动面向的是以上三个公众号的读者朋友,注意奥,这次抽奖方式不与以往不完全一样了,一定要看完奥! 1. 在公众号的后台回复[抽

C语言相关知识

1.指针:在程序中定义了一个变量,在进行编译时就会给该变量再内存中分配一个地址,通过访问这个地址可以找到所需变量,这个变量的地址成为该变量的指针.指针看作是内存中的一个地址,多数情况下,这个地址是内存中另一个变量的位置.一个变量的地址成为该变量的指针.[指针是变量在内存中的地址] 2.C语言中提供了地址运算符&来标识变量的地址,*是指针运算符,表示该变量是一个指针变量.**表示指向指针变量的指针变量. 3.在低级语言的汇编语言中都是直接通过地址来访问内存单元,在高级语言中一般使用变量名来访问内存

R语言相关的cheat sheet

https://www.rstudio.com/resources/cheatsheets/ http://michael.peopleofhonoronly.com/vim/vim_cheat_sheet_for_programmers_print.pdf

Swift语言相关资源贴

官方论坛!https://devforums.apple.com/community/tools/languages/swift WWDC系列视频!https://developer.apple.com/videos/wwdc/2014/?id=601 iOS Developer Library - Pre-Releasehttps://developer.apple.com/library/prerelease/ios/navigation/ MAC Developer Library - P