LuoJi_1995
LuoJi_1995
关注数: 0
粉丝数: 862
发帖数: 29,459
关注贴吧数: 40
[如果正确][生日]ROX生日?! @RichSelian
[线代+模板]写了一个STL风格的matrix和它的一些算法... 代码: pastebin 点 com 斜线 fH9cHBAv matrix模板表示一个矩阵,是一个container adapter,并定义了矩阵的和、数乘、积、转置,给出了矩阵的左右合并算法、生成对角阵的算法、生成单位阵的算法、初等行变换算法、求行最简形算法、求标准型算法、求逆算法、求秩算法。 fraction表示一个有理数(此处为了避免浮点数的误差而设计。。。)。 声明:请勿用于作业,否则后果自负。 求改进。。。比如什么地方能更和STL像一些。。。第一次使用移动构造函数。。。
noip我沙茶了 第二题写出一个nmlgn,第三题nk^2
第三题挂... 第二题O(nlgn)... 什么水平。。。 第二题的二分写了我半天。。。 上帝啊!!!再给我点时间第三题说不定能出来了!!!
[water]noip rp++ rp=std::accumulate(rp.begin(),rp.end(),std::bind2nd(std::multiply(),std::caculus::dx));
【杯具】这个叫做“算符优先分析”么? NOIp 2005 等价表达式,写了一个多项式解析器,结果4ac,6re,次数升高后,8ac,2wa。 查数据,发现有两个数据的括号不匹配 贴代码,这叫做“算符优先分析”么?另求找隐含的漏洞~ hi dot baidu dot co***ash inspworkroo***ash blog slash ite***ash 53d1b7edc85a5bf3cf1b3e18 dot html dot->. slash->/ 就这样。。。 输入: 第一行是一个表达式,且只含有变元a,有+-*^运算符,^指的是左结合性的幂运算符,可以使用(),^后面必须紧跟一个整数。 第二行是一个不小于2,不大于26的整数n,表示有多少个表达将要输入。 从第三行开始,每行一个表达式,共n行,表示表达式,选项的标号分别是ABCD。。。Z。 输出: 和第一个表达式等价的表达式的标号。 请不要考虑次数过高的情况。。。
今日联合国教科文和国际化学年什么的来我们学校做了个报告 貌似标题是Colorful World什么的。。 主要是关于材料的,就这样。
无聊的时候写了一个求fibonacci第n项的东西... 第一次用变长大数加法、乘法,以前都是定长的,这次还使用了亿进制。还有快速幂。。。 前60项通过实验证明正确了。。。不过问题可以出在奇怪的地方。。。 所以。。。求找错。。。 pastebin.com/mQaqhc81 顺便赞扬Windows的Calculator,用公式法能算出fibonacci数列第100项的精确值。。。
xym扫六合,虎视何雄哉! xym是我国第一位使用leveling effect战胜其他网民并吞并了多个学术领域为源学的、非功伟业的、智慧超过赵明毅、论文数量超过李煌老师的、无法用现有的词描述的人。 暂时使用xym(adj.)描述xym的一切特征。 xym通过对网民们进行了: 计算机底层教育 电学指导 小学生单片机编程竞赛指导 “为有源头ym来”的思想渗透 “只有我正确,只有我权威”的思想渗透 通过这些教育,让原本枣糕的网民大彻大悟,犹如醍醐灌顶一般。使中国网络力量获得洗礼。 在专业学术方面,xym主攻 扯淡汇编学、扯淡哲学、我很厉害学、你们不行学、操作系统扯淡学。由于它们过于复杂,所以xym将他们都设定为源学的分支。 现在,希望百度引起重视并创建它的百科词条。
【无聊出题】高精度加法 bigint是一个结构,有且只有一个名为data的成员变量,且访问修饰符为public,为一个int[50]。该结构内部使用万进制表示法,且data[i]表示从右向左第(i + 1)位。 编写一个为其写一个 += 运算符,在左运算数上加上右运算数,并返回左运算数的引用,要求代码尽量简短,且尽量高效。 不得嵌入内联汇编。
好吧我决定开始学习线性代数了... 统计一下谁学习过
misakamm威武!!! 炮姐最厉害了... 不知道alpha-beta剪枝的小白路过
嘛... 某日校内模拟赛... 于是... 第一题字符串处理 + hash... 我悲剧地用了map然后就挂了4个点。。。 第二题是简单的。。。。。。。 01背包。。。不过必须恰好选k个物品。。。这道题没发现价值可以为负,且少了一个常数优化(在空间上。。。可以把空间降低到原来的0.1倍),挂了8个点。。。另外两个点完全是运气的干活。。。我该庆幸我使用了滚动数组吧。。。 第三题是最小生成树。。。表示这是我第一次写最小生成树算法。。。居然全过且用时约为某同学提供的标准答案的一半。。。 第三题老师让我讲。。。我打开代码之后众人吐血……写了三个模板+一个运算符重载+使用STL的sort。。。btw,老师总爱说“大家看看xx同学的代码啊,他的代码风格很好,很漂亮”(我的代码风格各种糟糕我会说?) 另求算法帝,并查集的rank效果多大?减半路经压缩效果多大? 匿,猜猜我是谁。。。。
[吐槽]居然还有这种题目... 好喜感 Cl2为什么能给自来水消毒? A Cl2有毒,把细菌毒死 B Cl2有刺激性气味,能把细菌熏死 C Cl2有强氧化性,能kill细菌 D Cl2与水反应生成HClO,有很强的氯化性 匿,猜猜我是谁。。。
[求教育]初等数学白痴路过... 求数学的学习顺序... 表示初等数学很烂, 高等数学是什么好吃的?据说线性代数是高等数学...
tragedy 目测 -1.5*3-8
嘛,这么用STL居然没崩溃... 本来是这样的: int next_available_time[m]; //... memset(next_available_time, 0, sizeof next_available_time); 之后因为发现要用交错数组,所以改成 vector<int> next_available_time[m]; //... for (int i = 0, xx; i < m; ++i) { cin >> xx; next_available_time[i].resize(xx); } //... memset(next_available_time, 0, sizeof next_available_time); //... for (vector<int>::iterator it = next_available_time[x].begin(), end = next_available_time[x].end(); it != end; ++it) { //... } 结果在那之后it直接等于end。。。 这个忘记除去的memset居然用了我20分钟才查出来。。。
[表示最近老师讲了一下导函数][于是就有了这个]代码 pastebin.com/wGY3JVtY 用 导函数 + 二分 + 减根变换 求多项式(秦九韶算法计算。。。)的根。。。 风格嘛,老样子。。。 表示作业党拿去抄的话,错了可不管哦。 话说数学必修3上面有: double d = 1, r = 0; for (int i = 0; i <= degree; ++i) r += d * coef[i], d *= value; return r; 的算法需要2n次乘法。 秦九韶算法需要n次乘法。 秦九韶算法比它优越得多。。。算不算神论。。。
前面的居然被吃掉了。。。再谈匿名类型。。。 话说这个话题曾经被大大地批判过。。。 tieba.baidu.com/p/1243101061 无.GJK类型系统的,很native。。。 效率应该不错,而且这次写起来很优美。 auto page = atnew { Title = (std::string)"匿名类型", Text = (string)"自己看=w=", IsAd = false }; cout << page << endl; 恩,就这样
[考古]for循环名字的来历? 个人感觉foreach和for本身没关系... foreach的意思应该是 for each element in collection do begin; end; 易学C++说for循环的意思是formula循环:类似方程式赛车的跑圈循环。 求正解
cheese!!! 确认NOIp可用STL~ 庆祝一下~
吐槽一下数学卷子十分的…… f是定义在正整有序数对**上的函数, f(x, x) = x f(x, y) = f(y, x) (x + y) * f(x, y) = y * f(x, x + y) 干嘛不直接说是lcm呢
警告农民派掌门 行为:无意义灌水
历史问题.... 据说以前C语言支持使用 x=+a;表示x+=a;要表示x=a;需要使用x= +a; 那么减法呢。。。然后还有就是&符号。。。p=&x;。。。 如果没有这一说直接通知我吃掉这楼吧。。。
XNA Framework尼玛是在玩不起啦!!! 表示从来没接触过各种vector来做的绘图工作(看来我的小嫩手……) 看来只能单独使用Silverlight啦!还好Gestures还是很方便的。
Windows 8 居然有 SDK 了!!!!! 最近的 MSDN Newsletter 通知的 其实在msdn首页也有写 Windows 8 SDK。。。
水...今天我们数学老师让我们讨论一节课的这个... f(x) = x * x 和 f(x - 1) = (x - 1) * (x - 1) 是不是同一个函数(指一个数学概念) 结果我们老师说不是,因为他说“函数的自变量是x,第二个函数包含一种多重映射。” 球答案
弄完第三天了^
Windows 7 碉堡了 居然在休眠的最后一刻BSoD了,没被我看到,结果今天启动的时候就没有恢复,然后就看到了“Windows 已从异常关机中恢复”……
[Notification]弄完第二天了... 速成WP7开发教程,经过大幅度跳跃完成了第二天的任务 表示终于能借助IntelliSense写XAML了:-) 话说每天的Homework还挺有趣,都有实际背景~
概念问题,Game都是App吗? 正在纠结TetriSnake是不是App。
Microsoft过于奇葩了……内详 msdn.microsoft.com/zh-cn/windowsphone/hh182984 四天。。。
发一段代码……用了一下SFINAE pastebin: sT6PjUP3 恩,这里面的内容是可重载的Function的实现,名字叫做Overloads,可以如下使用: struct ifabs_functor { int operator () (int x) { return x > 0 ? x : -x; } double operator () (double x) { return x > 0.0 ? (x == 0.0 ? 0.0 : x) : -x; } }; int abs(int x) { return x > 0 ? x : -x; } double abs(double x) { return x > 0.0 ? (x == 0.0 ? 0.0 : x) : -x; } delegating (abs) multiple_abs; Overloads<int(int), double(double)> ifabs = ifabs_functor(), ifabs2 = multiple_abs; //然后他们就是带有重载版本的function了! 引入了属性模板和ref_pair。 属性模板Property的使用方法: Property<PropertyType, OwnerType, OffsetFunction, Getter, Setter, ConstGetter, ConstSetter>表示类型为PropertyType,所处类型为OwnerType,属性实例的偏移为OffsetFunction(),使用Getter、Setter作为访问器,使用ConstGetter、ConstSetter作为常属性访问器的一个属性。 为了节约空间,使用一个匿名union存储一个类的所有属性。 注意不能把ConstGetter传入Getter作为访问器,虽然这看起来是合理的,但仍需要重载一个非const版本来转发参数。 //e.g. struct Point { private: static int offset_f() { return (int)&((Point *)0xCC)->X - 0xCC; } int x, y; //forwarder int get_x() { return ((const Point *)this)->get_x(); } int get_x() const { return x; } void set_x(const int &value) { x = value; } //forwarder int get_y() { return ((const Point *)this)->get_y(); } int get_y() const { return y; } void set_y(const int &value) { y = value; } public: union { Property<int, Point, offset_f, &Point::get_x, &Point::set_x, &Point::get_x, nullptr> X; Property<int, Point, offset_f, &Point::get_y, &Point::set_y, &Point::get_y, nullptr> Y; }; Point(int xx, int yy) : x(xx), y(yy) { } Point() : x(0), y(0) { } }; /*****blahblahblah*****/ Point p = { 1, 2 }; cout << p.X << ' ' << p.Y << endl; p.X = 10; cout << p.X << ' ' << p.Y << endl; const Point pp = { 1, 2 }; cout << pp.X << ' ' << pp.Y << endl; //pp.X = 123; error: static assertion failed: No Const Setter ref_pair(T)是Overloads<T(), void(const T &)>。 使用ref_pair(T)传递一个引用,这使得可以传递属性的引用,在未来的.GJK中可以用来安全地传递属性保证其主对象不丢失,并且可以直接传递一般对象的引用。 属性模板可以推广到索引器模板(operator []),并且使得传递索引器的引用成为可能(例如传递Map中["David"]的引用)。 这里面使用了SFINAE =wwww=
求加油 话说要参加Mango的App比赛……9月30号截止,目前打算做的是以下三个的一个: Paint(能保存下来0 0) Link-up(连连看而已啦,这个得下功夫弄后台运行表现和视觉效果的干活) TetriSnake(可变形的俄罗斯方块,苦思冥想出来貌似结果还是已经有这个游戏了TAT!!!看来又得下功夫弄Visual Appeal) 求加油,求选择
你好,世界! 表示我爸过于强悍居然能从外面拍坏硬盘……接下来要从Lenovo下载各种驱动并安装,然后是重新安装MinGW 4.7.0、Code::Blocks、Office、压缩工具和Visual Express和最新的Visual Express for Phone RC1,参加Mango的比赛(如果来得及TAT)。还要尝试恢复原来硬盘的数据。唉,求推荐免费的恢复软件。另求是否存在各种USB转换为硬盘接口的东西(没记错的话坏掉的是个SATA的),不知道我的旧台式机是否支持SATA…… 求安慰,求安慰啊!!!!!!
is it script boy? is it script boy?
【constexpr】嗯……share一下如何使constexpr函数可以定义变量 constexpr函数被限定为只能有一个return statement,这是十分不方便的,因为不能定义变量。例如下面的一个情况: constexpr int GetSomeNumber() { return SomeBigConstexprFunc() % 2 == 0 ? SomeBigConstexprFunc() : -1; }//SomeBigConstexprFunc是一个调用起来很耗费时间的东西, //例如深层的很多次重复计算的递归 在g++中,有一些constexpr函数不能被内联,这使得只有编译期计算的不消耗运行时时间,而运行时计算的话,会耗费大量的时间重复运行SomeBigConstexprFunc。 这样,使得我们不得不实现两个版本的GetSomeNumber(constexpr的和非constexpr的),维护成本增加了。 如果有一个变量可以存下这个值呢? 例如如果可以: constexpr int GetSomeNumber() { int tmp = SomeBigConstexprFunc(); return tmp % 2 == 0 ? tmp : -1; } 那么上面的问题完美解决了。很可惜,这是个空想。 下面这个方法可以定义一个变量: constexpr int GetSomeNumber(int tmp = 0) { return (tmp = SomeBigConstexprFunc()) % 2 == 0 ? tmp : -1; } 如果不想让用户以GetSomeNumber(123)来调用的话,很显然可以这样: constexpr int GetSomeNumberInnerImpl(int tmp = 0) { return (tmp = SomeBigConstexprFunc()) % 2 == 0 ? tmp : -1; } constexpr int GetSomeNumber() { return GetSomeNumberInnerImpl(); } 如果需要隐藏GetSomeNumberInnerImpl,则可以进一步将其放入一个类中,作为静态成员函数,然后添加constexpr int GetSomeNumber();为友元,或者直接将GetSomeNumber作为公共静态成员函数。 //不知前人是否有这个方法,有的话我就直接会火星去吧。
[H2O]表示我的姨姥姥今天中午将到达杭州 萧山区
手头没有编译器,求测试。应该能看出来用途 @飞翔的天地 @幻の上帝 ...
终于弄出来能让对象的引用自动转换为接口的引用的方法了…… 不过Ref变成了一个三参模板…… 大概是这样: template <class T, class...Interfaces> struct any_base_of; template <class...Interfaces> struct InterfaceImplements; template <class T, class TBase = typename T::Base__, class TInerface = typename T::InterfaceImplements__> struct Ref; struct SomeObj : Object, virtual I1, virtual I2 { xNETTraits(Object, , I1, I2); }; //这样,Ref<SomeObj>就能且仅能转换为SomeObj的基类的引用 //或者SomeObj(和其基类)实现的接口(和基接口)的引用
someone is buying bianyiyuanli someone is buying bianyiyuanli
一个想法,利用模板……有关正则表达式 std::regex是表示正则表达式的类(我猜是std::basic_regex<char>吧……) 嗯,那么,很明显,regex对表达式的解析是在运行时进行的,这使得我们不能在编译期发现表达式的语法错误,也会降低表达式的匹配速度,因为解析表达式需要时间。 我的想法是:把正则表达式“编译”。 运行时,在构造函数解析表达式,然后用类似下面的结构创造一个正则表达式树: struct IRegex; struct RegexSimpleChar:IRegex; struct RegexCollection:IRegex; struct RegexAnyChar:RegexCollection;//元字符. struct RegexCharToChar:RegexCollection;//[a-z]这样的 struct RegexColl1AndColl2:RegexCollection;//[ac]这样的 struct RegexGreedyRepeat:IRegex;//{least,most}这样的,包括*、?、+ struct RegexNonGreedyRepeat:IRegex;//{least,most}?这样的,包括*?、??、+? //然后各种组啊、或者啊、匹配位置啊之类的 struct regex { regex(string r){/*parse r and construct IRegex*/} match(string r);//innerRegex->Match(r);这样的啦 IRegex *innerRegex; }; 当然这要使用很多虚函数,而且很多很多的function call会变得非常非常非常的慢,估计不如直接用自动机匹配吧? 实际情况是,我们要使用的正则表达式在编译期就确定了,所以是否能在这里优化呢? 我的想法:(可能前人已经有practice了) template <char ch, class TRest> struct RegexSingleChar; template <char ch> struct RegexSingleChar<ch, void>; template <char a, char b, class TRest> struct RegexFromTo;//[a-z] //当然元字符.就表示了RegexFromTo<0, 255, TRest>咯 template <class T1, class T2, class TRest> struct RegexAB; //[acdef]之类的 template <class TToRepeat, class TRest> struct RegexGreedyRepeat; template <class TToRepeat, class TRest> struct RegexNonGreedyRepeat; template <class TRegex> struct CompiledRegex { bool IsMatch(const char *str) { return TRegex::IsMatch(str); } }; 然后写一个preprocessor,把一个形如regex的表达式转换成各种模板的嵌套: regex = string_literal + "regex" string_literal = raw utf16 string literal | utf16 string literal 这样,通过函数的内联,可以省去调用函数的时间,通过模板,可以省去运行时解析正则表达式的时间。 目前我写了一个wildcard的东西,表示个人对正则无力,每次写的时候还得查说明书TAT。 待会放一下wildcard "compiler"的代码……
手头木有编译器,标准帝和飞哥求解啊~ void work(initializer_list<int> il) { static_assert(il.size() <= 10, "too many arguments"); } //这个可以么…… //如果不行,一定有非编译期构造初始化列表的方法吧?是什么呢?
我们老师正在推荐谭老湿的书0 0
xNET的Ref的一个问题tuzki->rub_face(); 嗯,最近由于写了一个xNET的translator(吐……)打算进一步改进一下: 将type_name@替换为: 1、在函数体、函数返回值、形式参数、lambda表达式或值类型内,或者是任何类/结构的静态成员,替换为decltype(::xNET::Core::RefOnStack<type_name>),采用引用计数规则。 2、在引用类型中,替换为decltype(::xNET::Core::RefOnHeap<type_name>),这和一般指针很相似,但是不能进行算术运算,并且将创建信息,保存此类型中引用的位置,让GC不产生误判。 主要是想问问大家,对于Ref的分化大家有什么想法……很明显Ref分化让运行时速度加快,但是Ref的分化也带来了几个问题: typedef SomeType@ SomeTypeRef;将是未定义行为 struct SomeThing : Object { Object@ obj; SomeThing() : obj(/*this will be translated into String@*/"hello, world") { } }; //... auto myObj = gcnew<SomeThing>()->obj; 这显然出现了问题 增加替换的时间(要根据上下文信息判断)。 在这里引入“语言”复杂度(是一个整数)的概念,一个“语言”复杂度是所有“语言元素”(例如关键字、标点符号、特殊符号之类的)在不同位置出现的时候其意义种类的平方和。 那么显然引入分化的Ref将会使语言更复杂(你也可以直接使用“晦涩”一词)。 对于判断引用的位置,之前提到过初始化的时候判断一次,之后直接用判断的结果。那么在分化和不分化之间该选择什么呢?(也就是时间复杂度和语言复杂度之间选择……)
放一段lese代码…… tieba.baidu.com/p/1201525477 原帖…… 话说这个不是一般的dirty……跟炮姐那个comment删除器没法比…… 求捧场+挽尊+bt测试。
简陋版的xNET代码转换器 .GJK在C++语言上做出扩展,使用 type_name@ 表示 decltype(::xNET::Core::Ref<type_name>) 。 例如原来繁杂的 using namespace xNET::Core; Ref<Array<Ref<Object>, 2>> arr = gcnew <Array<Ref<Object>, 2>> (5, 6); //表示一个元素为Ref<Object>的二维数组的xNET引用。 Ref<Array<Ref<Array<Ref<Object>>>>> arr = gcnew <Array<Ref<Array<Ref<Object>>>>>(10); //表示最终元素为Ref<Object>的交错数组的xNET引用。 变成了 using namespace xNET::Core; Array<Objcet@, 2>@ arr = gcnew <Array<Object@, 2>> (5, 6); Array<Array<Objcet@>@>@ arr = gcnew <Array<Array<Object@>@>>(10); 这与C++/CLI中的跟踪句柄或跟踪引用符号^、%很类似。 预计在后续版本中,还可变为 Object@[, ] arr = gcnew <Object@[, ]> (5, 6); Object@[][] arr = gcnew <Object@[][]> (10); //是不是简洁了许多? 这个表示法能且仅能应用于非预处理命令中。注释、字符串中的这种表示不被替换。 支持到的C++0x特性:r"delimiter[]delimiter"形式的raw string。 e.g. 下面代码中 #define SomeTypeRef(Type) Type@ Object@ obj = gcnew <String> ("string@"); /*Conversion from String@ to Object@ is implicit.*/ //只有第二行的第一个@表达法被替换。 使用方法: test1 [/trigraph] [/digraph] files... 将把files...翻译为C++源程序(将替换文件!)。 选项/trigraph和/digraph用于处理三字符和双字符(顺序允许交换),处理方法就是替换掉。 表示这是测试版本,尚不支持unicode等,希望大家帮助多多挑错。 注意:请不要使用奇葩宏(暂时没有做预处理),例如: #define SomeMacro(...) xNET:: SomeMacro(hello; world)String@ str; SomeMacro(hello world)String@ str; #define SomeMacro2() Work(); SomeMacro2()String@ str; 这都会导致不正确的解析。
炮姐用人人的对吧…… 太好找了……
[D2O2]…… http://tieba.baidu.com/mo/q/checkurl?url=http%3A%2F%2Frenren.com%2Fprofile.do%3Fid%3D729432887&urlrefer=8d067a6496b93415dd51c446d9dec493 不解释
为什么都是音乐问题……C#、F#、J#,貌似还有不存在的??
水:果然还是英语歌曲给力 Speech Recognition根本听不懂~
咩……还没到吧?
表示被化学竞赛选中了 可能转为理论党 不过目前学术水平还很烂,所以吸取所有进此楼的大神的rp!
求问:内存池的容量通常是? 还是动态增长的?
放一段代码
嗯,一个关于mingw的问题 我安装了c::b不含mingw的版本,然后安装了最新的mingw。 c::b里面选择编译运行木问题,但是打开文件夹,打开生成的应用程序文件,提示 The program can't start because libgcc_s_dw2-1.dll is missing from your computer. Try reinstalling the program to fix this problem. 这个是不是和安装顺序有关?应该先装哪个再装另一个? 另外regsvr32无用,已尝试过。
请求Lemoneee娘出现 @Lemoneee 那个live journal是你的么
问题:如何确定垃圾回收的频率、内存限制? 这里的问题是如何确定垃圾回收的初始频率、最低频率和最高频率和垃圾收集器管理的内存的限制。 xnet的应用程序面临着很大的效率问题,如下的主程序代码: for (int i = 0; i < 100000; ++i) gcnew <object> (); //使用全角空格可以防吞 在内存限制 = 20MB,初始频率 = 1 / 30s,最高频率 = 1 Hz,最低频率 = 1 / 600s时,在我的机器上,需要40s左右。 在内存限制 = 20MB,初始频率 = 1 / 30s,最高频率 = 1 Hz,最低频率 = 1 / 600s时,在我的机器上,需要1s左右。 在内存限制 = 500B,初始频率 = 1 Hz,最高频率 = 1 Hz,最低频率 = 1 / 60s时,在我的机器上,需要0.1s左右。 而C#运行 for (int i = 0; i < 100000; ++i) new object(); 只需要0.00x秒,瞬间完成。 如何选取更好的垃圾回收的初始频率、最低频率和最高频率和内存限制? 或者我需要把收集算法改进一下,各种排序+二分(不用链表了,改动态增长的数组)?然后还要各种位运算?
xnet开始支持使用初始化列表初始化数组。 初始化二维数组: ref<array<int, 2> > arr = //2表示了二维数组,有且只有一维数组和二维数组支持初始化列表 { { 1, 2, 3 }, { 4, 5, 6, 7 } }; //这创建了一个2行4列的二维int数组,且arr(0, 3) == 0。 初始化一维数组: ref<array<int> > arr1 = //1是默认的值,可以不写 { 1, 2, 3, 4, 5, 6 }; //创建了长度为6的数组。 初始化交错数组: //创建一个一维的交错数组,其元素类型为一维int数组。 ref<array<ref<array<int> > > > jagged = { { 1, 2, 3 }, { 4, 5, 6, 7 }, { 8, 9 }, { 10 }, { 11, 12, 13, 14, 15 } }; //初始化结果:jagged的长度为5,jagged[0]长度为3,jagged[1]长度为4 //jagged[2]长度为2,jagged[3]长度为1,jagged[4]长度为5
奇葩了……终于找到了一个正规的bug了 F:\Codes\xnet\sample.cpp|16|internal compiler error: in tsubst_copy, at cp/pt.c:10914| ||=== Build finished: 1 errors, 0 warnings ===| 是这样的: template <class T, class...TArgs> auto create_array_of(TArgs...args) -> ref<array<T, sizeof...args> > { return gcnew <array<T, sizeof...args> > (args...); } //...auto rankIs2 = create_array_of<int>(2,2,2);
首页
1
2
3
下一页