我已经下载了pharobyexample.org电子书,但它似乎与最新版本的pharo不同步,我也想知道有哪些资源可以帮助我学习smalltalk.
我正在尝试实现以下子例程.
string& sortAndMerge(string &u, int start, int end){
if(end>=0){
int mid=(start+end)/2;
if(start<end){
sortAndMerge(u,start,mid);
sortAndMerge(u,mid+1,end);
return merge(u,start,mid,end);
}
}
return;
}
Run Code Online (Sandbox Code Playgroud)
该函数被称为sortAndMerge(s,0,s.length() - 1),这里s是一个字符串.由于第3个参数最终可能是负数,我需要子程序来忽略这些情况.
我收到以下错误: -
return-statement with no value, in function returning ‘std::string& {aka std::basic_string<char>&}’ [-fpermissive].
Run Code Online (Sandbox Code Playgroud)
我有两个问题.
1)有没有办法可以从具有除void之外的返回类型的函数返回任何内容.
2)什么时候可以使用return关键字什么也不用NULL.
我刚刚使用系统浏览器在pharo中创建了自己的包(MyPackage)和类(MyClass).这是它的外观.
Object subclass: #MyClass
instanceVariableNames: ''
classVariableNames: ''
category: 'MyPackage'
Run Code Online (Sandbox Code Playgroud)
我理解术语子类和类别,而不是获得其他两个术语(instanceVariableNames,classVariableNames)的含义.