使用Objective-C,我有一个30条字典的字典,我试图在我的常量文件中定义它,就像我定义String
或Int
一样:
define key @"value"
是否可以用这种方式定义字典?
如果是,那么定义数组的语法是什么?
非常感谢。
答案 0 :(得分:2)
您可以定义任何您想要的内容。如果你写
var mongoose = require('mongoose');
mongoose.Promise = global.Promise;
mongoose.connect('mongodb://localhost:27017/pollApp');
var userSchema = new mongoose.Schema({
username: { type: String, required: true},
phonenumber: { type: String, required: true, unique: true}
});
var option = new mongoose.Schema({
title: {type: String, required: true},
votes: { type: Number, default: 0 },
voterList: {type: []}
});
var poll = new mongoose.Schema({
question: { type: String, required: true, unique: true},
options: { type: [option], required: true},
showVoters: {type: Boolean, default: false}
});
mongoose.user = mongoose.model('User', userSchema);
mongoose.poll = mongoose.model('Poll', poll);
module.exports = mongoose;
编译期间的预处理程序(实际上在编译任何内容之前)在源代码中查找#define identifier replacement
并将其替换为indentifier
。
您可以用这种方式定义词典或数组
replacement
多行定义需要行尾的反斜杠。
但我不建议使用#define kDictionary @{"key" : "value"\
"key2" : "value2"}
#define kArray @["item1", "item2"]
。您应该使用类方法创建类,该类将为您提供字典/数组。它不易出错。