我正在试验Prolog并试图制作我自己的" if-then-else"方法,所以我不使用这种-> ;方法,为了试验而做.我的目标是使它在我的代码中可以嵌套ifs和elses(如果需要).到目前为止,我有这个:
ifthenelse(_, G, G):- G. %no matter the condition, the goals are the same
ifthenelse(true,G,_):- G. %if
ifthenelse(false,_,G):- G. %else
Run Code Online (Sandbox Code Playgroud)
我认为我的方式似乎不太正确.我怎样才能做好自己的事ifthenelse/3?
谢谢
如何确保序言列表的所有元素都是0或1?
我需要生成一个给定长度的列表,并确保它只有这两个数字:
例如[0,0,0,0,0,0],[1,0,0,1,0,1,1等等
我有一个 C++ 类,它的成员中包含一个std::string*. 我想为这个类创建一个构造函数,它将 astd::string作为参数并使字符串指针指向它:
class foo
{
private:
std::string * bar;
public:
foo(std::string);
}
foo::foo(std::string s)
{
//code
}
Run Code Online (Sandbox Code Playgroud)
如果我这样做this->bar = &s;显然不起作用(保存 s 字符串的地址,因为它应该)。我该怎么做?
我尝试创建一个以字符串指针作为参数的构造函数,但它也无法正常工作,我假设出于类似的原因。
编辑:阅读评论后,我决定更改构造函数,因此现在将 astd::string*作为其论证,并从那里开始工作。
prolog ×2
c++ ×1
constructor ×1
eclipse-clp ×1
elements ×1
if-statement ×1
list ×1
pointers ×1
string ×1