作为我工作的一部分,我偶尔会被要求评估编程职位的候选人.我最近在我的办公桌上传递了一段代码片段,我的第一个想法是我不确定这样的代码是否会再编译.但编译它确实如此,它也可以.
谁能解释为什么以及如何运作?任务是提供一个函数来排序五个整数值.
void order5(arr) int *arr; {
int i,*a,*b,*c,*d,*e;
a=arr,b=arr+1,c=arr+2,d=arr+3,e=arr+4;
L1: if(*a >*b){*a^=*b;*b^=*a;*a^=*b;}
L2: if(*b >*c){*b^=*c;*c^=*b;*b^=*c;goto L1;}
L3: if(*c >*d){*c^=*d;*d^=*c;*c^=*d;goto L2;}
if(*d >*e){*d^=*e;*e^=*d;*d^=*e;goto L3;}
}
Run Code Online (Sandbox Code Playgroud)
现在我可以看到这种方法的缺点(1970年以后出生的人缺乏可读性和可维护性)但是有人能想到任何优势吗?我犹豫不决,但是,在我们决定是否将这个人带回第2轮之前,我想知道它是否具有除了工作保障之外的任何救赎功能.
在我工作的公司,我们使用hg作为(d)vcs.
使用的大多数存储库都保存在一个中心化的空间中,并通过hgweb提供服务.
为了便于使用和更好的用户体验(和概述),我喜欢有一些像gitorious(github,bitbucket).
它应该允许
我正在为Twitter推断一些关于追随者数量的报告,但经过大量搜索和反复试验后,我无法获得追随者的数量 - 特别是过去的粉丝数量.
我知道有一个API可以为关注者获取个人userIds,但这对我需要的东西来说太过分了,我每天都要调用它.理想情况下,如果我可以通过日期并且它可以返回关注者的数量,那将是很好的.
有没有人有这方面的经验以及API可能是什么!
谢谢
tl; dr问题在底部.
我是一个尝试新事物的开发人员 - 我的最后一个毒药是c ++.正如我在我的Linux笔记本电脑,而另一半Win XP的电脑上花了我一半的时间,我试图找到一种方法来创建基本的,准系统项目,用好C++的做法(当然,我不知道从经验他们,我刚看过他们).现在,我的项目,而使用几乎适用cmake . && make于Linux操作系统(它的工作原理时,头文件和源文件相同的文件夹,当我把它们分开,包括/ src目录文件夹失败).我使用的MinGW的nuwen的分布在Windows(我知道,工具链工作,它编译项目在Eclipse中没有任何问题).
我的项目目录如下所示:
engine
|
|- main
|
|- include
|
|- App.h
|- CMakeLists.txt (2)
|- src
|
|- main.cc
|- App.cc
|- CMakeLists.txt (3)
|- CMakLists.txt (1)
Run Code Online (Sandbox Code Playgroud)
文件的内容非常简单(为了清楚起见,我将删除包含警卫等)
App.h:
class App {
public:
App();
int onExecute();
};
Run Code Online (Sandbox Code Playgroud)
App.cc:
#include <iostream>
#include "App.h"
App::App() {
}
int App::onExecute() {
std::cout << "inside app.." << '\n';
return 0;
}
Run Code Online (Sandbox Code Playgroud)
main.cc:
#include <iostream>
#include "App.h"
using namespace std;
int main(int …Run Code Online (Sandbox Code Playgroud) Git索引究竟包含什么,以及我可以使用什么命令来查看索引的内容?
更新
谢谢你的所有答案.我知道索引充当临时区域,提交的内容是索引而不是工作树.我只是对索引对象的内容感到好奇.我想它可能是文件名/目录名列表,SHA-1对,也许是一种虚拟树?
在Git术语中,是否有任何可用于列出索引内容的管道命令?
我有这个结构
[Serializable]
public struct Foo : IConvertible, IXmlSerializable, IComparable, IComparable<Foo>
{
private readonly int _value;
private Foo(int id)
{
this._value = id;
}
private IConvertible ConvertibleValue
{
get
{
return this._value;
}
}
public int CompareTo(object obj)
{
if (obj is Foo)
{
var foo = (Foo) obj;
return this.CompareTo(foo);
}
return -1;
}
public int CompareTo(Foo other)
{
return this._value.CompareTo(other._value);
}
public TypeCode GetTypeCode()
{
return this._value.GetTypeCode();
}
bool IConvertible.ToBoolean(IFormatProvider provider)
{
return this.ConvertibleValue.ToBoolean(provider);
}
char IConvertible.ToChar(IFormatProvider provider)
{ …Run Code Online (Sandbox Code Playgroud) 我想仅针对特定选项卡进行更改.我该怎么做?
我试过两个:
QTabBar::tab#tbGeneral{... }
QTabWidget::tab-bar#tbGeneral{... }
Run Code Online (Sandbox Code Playgroud)
没有用.
我有
...
TDispPitch = class
private
iLineSize: Integer;
iLineColor: TColor;
bDisplayAccent: Boolean;
bVisible: Boolean;
published
property LineSize : Integer read iLineSize write iLineSize;
...etc
end;
...
Run Code Online (Sandbox Code Playgroud)
我想要在Object Insepector中显示此功能来编辑设置.
我尝试添加
property DispPitch: TDispPitch read FDispPitch write FDispPitch. like
Run Code Online (Sandbox Code Playgroud)
可以显示DispPitch,但我看不到它的属性.比如LineSize,LineColor等
我有一个Android应用程序,它既有CursorAdapter基于ListViews(由sqlite支持),也有BaseAdapter基于自定义的ListViews,它是从服务器上下载的JSON构建的.
两者中显示的数据是相同的 - 图像和几个TextViews.我的基于Cursor的ListView有3000行,基于JSON的ListView大约有30行.但是,对于基于Cursor的适配器,向下滚动列表要快得多.对于基于JSON的列表,数据全部在行可见之前获取.可以按需下载两种类型列表的图像.
我将两个ListViews配置相同 - 都使用fastScrollEnabled,scrollingCache并smoothScrollbar设置为true.
我正在寻找关于如何试图弄清楚这里发生了什么以及可能修复它的线索,以便基于JSON的ListViews和基于Cursor的那样快.