我只是关注七周七语言一书.
我已经使用命令在我的Mac机器上安装了gprolog port install gprolog-devel并运行了第一个prolog代码.
likes(wallace, cheese).
likes(grommit, cheese).
likes(wendolene, sheep).
friend(X, Y) :- \+(X = Y), likes(X, Z), likes(Y, Z).
Run Code Online (Sandbox Code Playgroud)
如果我输入likes(wallace, cheese).prolog解释器,我就有错误
未捕获的异常:错误(exist_error(procedure,likes/2),top_level/0).
Prolog 1.3.1无法安装在我的Mac上,我正在使用prolog 1.4.0.
首先,我生成了名为'item'的脚手架
我想检查项目的哪些字段被修改.我尝试了两次可能的尝试,那些不起作用.
第一次尝试!
def edit
@item = Item.find(params[:id])
@item_before_update = @item.dup
end
def update
@item = Item.find(params[:id])
# compare @item_before_update and @item here, but @item_before_update is NIL !!!
end
Run Code Online (Sandbox Code Playgroud)
第二次尝试!我寻找将数据从视图传递到控制器的方式,但我不能. edit.html.erb
<% @item_before_update = @item.dup %> # I thought @item_before_update can be read in update method of item controller. But NO.
<% params[:item_before_update] = @item.dup %> # And I also thought params[:item_before_update] can be read in update mothod of item controller. But AGAIN NO
<% form_for(@item) do |f| %>
# …Run Code Online (Sandbox Code Playgroud) 我对指针方法接收器和非指针方法接收器的理解首先是可以在方法中修改而下一个不是.
因此,以下工作正如我预期的那样.
type student struct {
name string
age int
}
func (s *student) update() {
s.name = "unknown"
s.age = 0
}
func main() {
s := student{"hongseok", 13}
fmt.Println(s)
s.update()
fmt.Println(s)
}
Run Code Online (Sandbox Code Playgroud)
它打印hongseok/13和unknown/0.
但是,我想通过重新分配立即替换update方法中的整个s.所以,我刚刚修改了更新方法.
func (s *student) update() {
s = &student{"unknown", 0}
}
Run Code Online (Sandbox Code Playgroud)
并且它不会在main方法中更改s并打印double hongseok/13.
func (s *student) update() {
*s = student{"unknown", 0}
}
Run Code Online (Sandbox Code Playgroud)
以上更改解决了问题.
我认为没有语义差异.我错过了什么?
我想为STL list迭代器获取下一个值,但它没有实现operator+,但是它已经实现了vector.为什么以及如何在我想要的地方获得价值?
如果我operator++多次打电话,我想我能做到这一点,但是不是有点脏吗?
我想做的是以下内容:
list<int> l;
...omitted...
list<int>::iterator itr = l.begin() + 3; // but, list iterator does not have
// operator+
Run Code Online (Sandbox Code Playgroud)
什么是我想要的最佳解决方案?
我只是关注akka样本但无法运行该程序.
我该怎么做才能运行该程序?
这是我的代码
build.sbt
name := "My Project"
version := "1.0"
scalaVersion := "2.10.2"
resolvers += "Typesafe Repository" at "http://repo.typesafe.com/typesafe/releases/"
libraryDependencies +=
"com.typesafe.akka" %% "akka-actor" % "2.2.1"
Run Code Online (Sandbox Code Playgroud)
Hello.scala
import akka.actor.Actor
import akka.actor.Props
class HelloWorld extends Actor {
override def preStart(): Unit = {
// create the greeter actor
val greeter = context.actorOf(Props[Greeter], "greeter")
// tell it to perform the greeting
greeter ! …Run Code Online (Sandbox Code Playgroud) 我创建了简单的 PageView 应用程序来测试多个页面。
import 'package:flutter/material.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: MyHomePage(title: 'Flutter Demo Home Page'),
);
}
}
class MyHomePage extends StatefulWidget {
MyHomePage({Key key, this.title}) : super(key: key);
final String title;
@override
_MyHomePageState createState() => _MyHomePageState();
}
class _MyHomePageState extends State<MyHomePage> {
@override
Widget build(BuildContext context) {
final firstPage = FirstPage(key: Key("FirstPage"));
final secondPage = SecondPage(key: Key("SecondPage"));
debugPrint("_MyHomePageState.build");
return …Run Code Online (Sandbox Code Playgroud) 我正在尝试在我的ubuntu服务器上安装gitolite.
还有,还有很多我还不知道的事情,但是我的指示很慢(http://sitaramc.github.com/gitolite/doc/1-INSTALL.html).
请告诉我任何线索〜谢谢!
+我使用相同的机器作为服务器和客户端.
+ ssh -vvv命令的完整列表
yoon@ubuntu:~$ ssh -vvv gitolite@myserver.com
OpenSSH_5.5p1 Debian-4ubuntu5, OpenSSL 0.9.8o 01 Jun 2010
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to myserver.com [xxx.xxx.xxx.xxx] port 22.
debug1: Connection established.
debug3: Not a RSA1 key file /home/yoon/.ssh/id_rsa.
debug2: key_type_from_name: unknown key type '-----BEGIN'
debug3: …Run Code Online (Sandbox Code Playgroud) 我只是关注Scala Cookbook
但是,如果我尝试运行基本测试,则由于未解析的包库而无法编译.
这是我的代码......
build.sbt
name := "BasicProjectWithScalaTest"
version := "1.0"
scalaVersion := "2.10.3"
libraryDependencies += "org.scalatest" %% "scalatest" % "1.9.+" % "test"
Run Code Online (Sandbox Code Playgroud)
*Hello.scala*
package com.alvinalexander.testproject
object Hello extends App {
val p = Person("Avlin Alexander")
println("Hello from " + p.name)
}
case class Person(var name: String)
Run Code Online (Sandbox Code Playgroud)
HelloTest.scala
package com.alvinalexander.testproject
import org.scalatest.FunSuite
class HelloTests extends FunSuite {
test("the name is set correctly in constructor") {
val p = Person("Barney Rubble")
assert(p.name == "Barne Rubble")
}
test("a Person's name …Run Code Online (Sandbox Code Playgroud) 我正在关注Boost入门文章.我已经用Bjam安装了它,我可以看到包含文件和库文件(.a,.so).
#include <boost/regex.hpp>
#include <iostream>
#include <string>
int main()
{
std::string line;
boost::regex pat( "^Subject: (Re: |Aw: )*(.*)" );
}
Run Code Online (Sandbox Code Playgroud)
如果我使用此命令构建上面的代码
g++ -I./boost/include -L./boost/lib -lboost_regex-gcc43-mt -static -o test_boost2 test_boost2.cc
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
/tmp/ccJFVVid.o: In function `boost::basic_regex<char, boost::regex_traits<char, boost::cpp_regex_traits<char> > >::assign(char const*, char const*, unsigned int)':
test_boost2.cc:(.text._ZN5boost11basic_regexIcNS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEE6assignEPKcS7_j[boost::basic_regex<char, boost::regex_traits<char, boost::cpp_regex_traits<char> > >::assign(char const*, char const*, unsigned int)]+0x22): undefined reference to `boost::basic_regex<char, boost::regex_traits<char, boost::cpp_regex_traits<char> > >::do_assign(char const*, char const*, unsigned int)'
collect2: ld returned 1 exit status
Run Code Online (Sandbox Code Playgroud)
它在我的Windows机器下运行正常.
怎么了?
gcc版本4.3.2(Debian 4.3.2-1.1)
Linux xxxxxxxx …