这是我在此的头一篇博文.我22岁来自西班牙,我已经读完大学,在那里我学习了一组朋友,我想开发一个游戏,它将包含一个3D世界,其中简单的3D形状互相交互,其中"真实"就像物理一样参与其中.我没有电子游戏编程经验,我愿意学习,所以我想问:
您将使用哪种编程语言和/或库来构建一个由3D形状相互交互并且像物理一样"真实"的游戏?
提前致谢.
ps:我知道这个问题有多个答案,但我想知道目前最常用的技术是什么.
我正在学习Clojure解决4clojure上列出的问题.其中一个练习是max
使用变量参数创建自己的函数.
我正在尝试使用REPL解决这个简单的问题,我得到了这个解决方案:
(defn my-max
[first & more] (calc-max first more))
(defn calc-max
[m x]
(cond (empty? x) m
(> (first x) m) (calc-max (first x) (rest x))
:else calc-max m (rest x)))
Run Code Online (Sandbox Code Playgroud)
哪个工作正常,但练习不允许使用,def
因此我必须将两个功能合二为一.当我calc-max
用它的代码替换引用时,结果是:
(defn my-max
[first & more]
((fn calc-max
[m x]
(cond (empty? x) m
(> (first x) m) (calc-max (first x) (rest x))
:else calc-max m (rest x)))
first more))
Run Code Online (Sandbox Code Playgroud)
但是这段代码不起作用并返回下一个错误:
user=> (my-max 12 3 4 5 612 3)
java.lang.ClassCastException: …
Run Code Online (Sandbox Code Playgroud) 我有一个项目,它将为用户提供他们自己的域名,例如tumblr.
我想找到一个可以提供的提供商:
我想实现一个应用程序,其中我有各种可以解释为XML字符串的对象.首先,我想到创建一个接口,使每个对象实现两个方法:
public abstract Element toXML();
public abstract void fromXML(Element element);
Run Code Online (Sandbox Code Playgroud)
第一个将对象信息转换为DOM元素,第二个将信息从DOM元素加载到对象.我最终在每个子类中定义了一个静态String,其中包含元素的TAG,因此我决定将接口转换为抽象类并为其提供更多功能:
public abstract class XmlElement implements Serializable {
protected static Document elementGenerator;
public String TAG = "undefined";
static {
try {
elementGenerator = DocumentBuilderFactory.newInstance().newDocumentBuilder().newDocument();
} catch (ParserConfigurationException e) {
StateController.getInstance().addLog(
new Log(Log.Type.ERROR, "Couldn't load XML parser: " + e));
System.exit(1);
}
}
public abstract Element toXML();
public abstract void fromXML(Element element);
}
Run Code Online (Sandbox Code Playgroud)
元素生成器在toXML方法中用于生成元素.我无法克服的这个设计的错误是TAG属性不能像我希望的那样变成静态,主要是因为我不想实例化每个子类的对象只是为了知道TAG它使用.Java不允许覆盖静态属性或方法,这是解决这个问题的正确方法吗?
我遇到了一个设计问题,我不知道如何在java中克服.我想覆盖从父构造函数调用的方法.这是一个非常简单的问题示例:
public class Parent {
public Parent(){
a();
}
public void a() {
// CODE
return;
}
}
public class Child extends Parent {
public Child() {
super();
}
public void a() {
super.a();
// MORE CODE
return;
}
}
Run Code Online (Sandbox Code Playgroud)
我知道子类不会被初始化,直到构造父类,因此不会调用子类a()方法.解决这个问题的正确设计是什么?
嗨,我已经和Django合作了几个月,发现它真的很有帮助.是否有其他编程语言(如Java或C#)的类似框架?我与Django的问题是找到一个服务器来托管项目,因为支持服务器更昂贵,更难找到.
在Django中,我发现以下项有用:对象关系映射器,管理界面和URL管理.
谢谢!
嗨,我在编译一段简单的代码时遇到了麻烦.我正在创建一个实现卡片组的类,我想使用list :: short方法创建一个shuffle方法.
相关代码:
加入deck.h
#ifndef _DECK_H
#define _DECK_H
#include <list>
#include <ostream>
#include "Card.h"
#include "RandomGenerator.h"
using namespace std;
class Deck {
private:
static const int CARD_NUMBER = Card::CARDS_PER_SUIT*Card::SUIT_NUMBER;
list<Card *> *cards;
RandomGenerator rg;
public:
Deck();
~Deck();
void shuffle();
private:
bool const compareRandom(const Card *a, const Card *b);
};
#endif /* _DECK_H */
Run Code Online (Sandbox Code Playgroud)
deck.cc:
#include "Deck.h"
/**
* Fills the deck with a set of 52 cards
*/
Deck::Deck() {
cards = new list<Card *>();
for(int i = 0; …
Run Code Online (Sandbox Code Playgroud) 我正在解决一个4Clojure练习,这个练习要求你建立自己的插入功能.我的答案如下:
(fn my-interpose
([separator input] (my-interpose separator input nil))
([separator input result]
(if
(empty? input)
(reverse (rest result))
(my-interpose separator (rest input) (cons separator (cons (first input) result))))))
Run Code Online (Sandbox Code Playgroud)
在读Clojure书时,我正在做这些练习来学习语言.我想知道有关我的语言经验的人的代码的意见.我可以避免反向通话吗?是否有任何惯例我很难用这种代码打破?
我无法将Swift字典转换为NSDictionary
.我使用Swift枚举作为我的字典的关键:
enum StringEnum : String {
case Lemon = "lemon"
case Orange = "orange"
}
var swiftDictionary = [StringEnum: AnyObject]()
swiftDictionary[.Lemon] = "string value"
swiftDictionary[.Orange] = 123
Run Code Online (Sandbox Code Playgroud)
当我尝试NSDictionary
使用as
关键字将其转换为a 时:
let objcDictionary: NSDictionary = swiftDictionary as NSDictionary
Run Code Online (Sandbox Code Playgroud)
我收到编译器错误:
'[StringEnum : AnyObject]' is not convertible to 'NSDictionary'
Run Code Online (Sandbox Code Playgroud)
可以转换这些类型的字典,还是需要循环Swift字典并NSDictionary
手动创建?
如何在Clojure中迭代集合的元素,以便在每次迭代中访问前一个,当前值和下一个值.
使用以下向量:
[1 2 3 4]
Run Code Online (Sandbox Code Playgroud)
我想在每次迭代中访问以下值:
[nil 1 2]
[1 2 3]
[2 3 4]
[3 4 nil]
Run Code Online (Sandbox Code Playgroud) clojure ×3
java ×3
.net ×1
c++ ×1
django ×1
dns ×1
frameworks ×1
ios ×1
list ×1
objective-c ×1
overriding ×1
static ×1
swift ×1