三道c++难题谁会做,三道c++难题谁会做

问题描述

三道c++难题谁会做,三道c++难题谁会做
题1
class Object {
public:
Object() { init(); }
virtual void init() {}
};
class GameObject : public Object {
public:
virtual void init() { m_TypeName = ""GameObject""; }
std::string m_TypeName;
};
int main()
{
GameObject gameObject;
std::cout << ""GameObject type name is "" << gameObject.m_TypeName << std::endl;
return 0;
}
请问这段代码的运行结果为何? 产生这样结果的原因是? 如何修改能够使代码符合预期?

题2
float zero = 0 three = 3 four = 4;
class Complex
{
public:
float &x &y;
Complex() : x(zero) y(zero) {}
Complex(float& z) : x(y) y(z) {}
Complex(float& _x float& _y) : x(_x) y(_y) {}
};
float square(const float& x)
{
return x * x;
}
float absValue(Complex& c)
{
return sqrt(square(c.x) + square(c.y));
}
int main()
{
Complex c(four);
printf(""absolute value is %gn"" absValue(c));
return 0;
}
请问这段代码的运行结果为何? 产生这样结果的原因是? 如何修正?

题3
某树形结构节点定义如下:
class Node
{
public:
const char* m_FriendlyName;
Node* m_ParentNode;
Node* m_LeftChildNode;
Node* m_RightChildNode;
};
void printNode(Node* p_Node)
{
if (p_Node != 0)

std::cout << ""Node: "" << p_Node->m_FriendlyName << std::endl;

}
请编写代码: 1 通过调用printNode函数打印树结构的所有节点; 2 按照层级顺序打印树结构的所有节点

解决方案

打开codepad.org,左边选择C++,把代码贴进去,勾选run code。结果就可以看到了。有什么错误也会告诉你。

机器能回答你的问题何必求助于人。

解决方案二:
没工夫看,第一题是基类构造函数的顺序问题。
基类的构造函数执行的时候,调用自身的init
http://blog.csdn.net/magictong/article/details/6734241

解决方案三:
第一个应该运行报错,具体报错信息不知道,可以自己试试。原因是基类在构造的时候调用了一个虚函数,子类重载了该虚函数而且此时子类没有构造完成(子类的成员m_TypeName没有构造),所以报错。做法可以将m_TypeName的初始化放到子类的构造函数里,而不是虚函数中。,
第二个也是运行时报错,原因是x没有初始化。因为类中的成员构造顺序是声明顺序,所以x的构造在y之前,但是此时y没有值,所以之后访问x会报错。修改方式是把Complex(float& z) : x(y) y(z) {}改成Complex(float& z) : x(z) y(z) {}
第三个第一问是

 void printNode(Node* p_Node){  if (p_Node != 0)  std::cout << ""Node: "" << p_Node->m_FriendlyName << std::endl;    printNode(p_Node->m_LeftChildNode);    printNode(p_Node->m_rigthChildNode);}

先序遍历。第二问没有仔细想,坐等大神。

解决方案四:
直接用编译器编译运行一下,就看到结果了

时间: 2024-10-24 12:27:23

三道c++难题谁会做,三道c++难题谁会做的相关文章

用大数据做产业组织 用“互联网+”做产业服务

纵观历史,回望兴衰,惟改革者进,惟创新者强. 当今时代,以信息技术为核心的新一轮科技革命正在孕育兴起,互联网日益成为创新驱动发展的先导力量,深刻改变着人们的生产生活,有力推动着社会发展.互联网已经成为大众创业.万众创新的新工具.而如何用好这一新工具,通过市场化手段科学合理配置创新资源的问题,值得我们深入探索和思考. 抓创新就是抓发展,谋创新就是谋未来.中关村发展集团自2010年成立以来,一直在探索实践国有资本在科技创新中的积极作用,已经成为北京市委.市政府推动中关村国家自主示范区发展,市场化配置

做SEO第一件事就是做关键词分析

摘要: 关键词库是做SEO做推广最重要的一件事,做SEO第一件事就是做关键词分析,定位,布局等等,很多人知道关键词的重要性.但很多人还不知道关键词库的重要性,因为一般人是玩热门关 关键词库是做SEO做推广最重要的一件事,做SEO第一件事就是做关键词分析,定位,布局等等,很多人知道关键词的重要性.但很多人还不知道关键词库的重要性,因为一般人是玩热门关键词的,一个网站一半以上的流量是从核心关键词过来的,而且一般的小网站不容易做起来长尾关键词,基本上没几个小网站的运营者能体会到涨流量这种疯狂.所以他们

做论坛有感:一个人做,真的好难

众所周知,一个坛子的兴衰很大程度上取决于它的人气. 而提高人气,初期应该是增加论坛帖子的数量,多发些引人注意的信息,这应该是每一个做论坛的朋友都比较拿手的. 其次,就是持之以恒. 认真看过"新人导读"之后才发现,原创才是最最重要的,论坛的本质也在于此,论坛是用来交流的,而这种交流是建立在深切体会的基础上的.都知道,要学好英语,必须每日都得练习.论坛也是一样,要把它做好,不可能是三两天的事情,必须保持论坛每天都有新的信息,最好多一些原创内容,这里少不了版主和各位会员的功劳. 到后期,管理

不做SEO的奴隶更不做百度的小白脸

不做SEO的网站会死只做SEO的网站生不如死!这句话很明显的告诉大家,流量来源过于单一是多么的可怕,今天我就深深体会到了这一点.没有SEO我有网站内容,有一部分固定访客;没有百度我还有其他搜索引擎,其他平台可以给用户做网站入口.不做SEO的奴隶,更不要做百度的小白脸.先上两张图,大家对比着看看.     上图中展示可以看出没有百度搜索引擎的情况下,对网站并没造成致命的打击. 在昨天谷歌PR值变化前,来自百度和google两个搜索引擎的流量基本是均衡的,其次就是来自百度知道的流量,最后是其他搜索引

b tils utlis-Dbutils做缓存 当实体类的属性为集合时 怎么做呢 众大神有做过的吗

问题描述 Dbutils做缓存 当实体类的属性为集合时 怎么做呢 众大神有做过的吗 Booster这个类以及 做好 但是User包含List 就不会做了 解决方案 http://wallimn.iteye.com/blog/1606930

php提现-请问 做一个网站 提现功能怎么做

问题描述 请问 做一个网站 提现功能怎么做 一个 商城网站怎么做提现功能 商城网站怎么做提现功能 商城网站怎么做提现功能

unity3D 安一个键做一次完整的动做,每按一次做一次,每次都做完动作在按一次在做动作。。

问题描述 unity3D 安一个键做一次完整的动做,每按一次做一次,每次都做完动作在按一次在做动作.. unity3D 安一个键做一次完整的动做,每按一次做一次,每次都做完动作在按一次在做动作..

c#-新手求解,我用asp.net做的网站,现在想做后台

问题描述 新手求解,我用asp.net做的网站,现在想做后台 我做的网站可以连接数据库,实现增删改查,但我想加一个网站后台管理系统.一点思路都没有,数据库表要怎么建.是不是要多个表等等,请大家说说思路 给点建议 或者给个例子.谢谢! 解决方案 后台管理最经典的模型就是用户管理, 1.添加一个用户表user,里面包含用户id,名称,电子邮箱,电话,密码,删除标志(默认0),是否是管理员 需要登记客户信息的时候,前台就需要添加一个登录页面,需要输入用户名称,密码,点确认时如果正确就允许登录,错误就提

移动开发-毕业设计想做个简单点的,做个android小游戏,比较容易上手的,哪些会好点?

问题描述 毕业设计想做个简单点的,做个android小游戏,比较容易上手的,哪些会好点? 不要连连看啥的啊,网上一搜一大堆,导师肯定说太简单了,没花时间下去做,不给过的. 解决方案 堆积木,自己找百度············ 解决方案二: 欢迎来看我的博客 http://blog.csdn.net/zxx43

PE传道者陈玮:不做送钱的天使 就做吃钱的魔鬼

东方富海董事长 陈玮 "不赚钱"神马"都是浮云.有钱赚这个行业就有发展,没赚钱就没有发展." "PE行业的兴盛是一个好的趋势,解决了民间资本投资渠道问题,应该鼓励.引导,而不应该打压." "从某种程度上说,全民PE即意味着全民创业.PE将募集到的民间资本投资到企业里,投资到国家鼓励发展的行业里,恰恰是金融支持实体经济发展的重要体现.如果打压PE行业,钱就会流向房地产或者一些投机行业,并不利于经济健康发展." "去年以