История изменений
Исправление zaz, (текущая версия) :
Выпелял принт - не помогло
struct Foo {
val: i32,
p: *const i32
}
impl Foo
{
#-inline-
pub fn new() -> Foo {
let mut o = Foo {val: 123, p: std::ptr::null()};
o.p = &o.val;
// print!("Create new Foo: {:p}\n", &o);
return o;
}
fn print(&mut self) {
print!("In foo print {:p} : {:p} -> {}\n", &self.val, self.p, self.val);
}
}
Output:
In foo print 0x7ffcdd36ebf0 : 0x7ffcdd36ec90 -> 123
Destroy foo 0x7ffcdd36ebf0
Исправление zaz, :
Выпелял принт - не помогло
struct Foo {
val: i32,
p: *const i32
}
impl Foo
{
#inline
pub fn new() -> Foo {
let mut o = Foo {val: 123, p: std::ptr::null()};
o.p = &o.val;
// print!("Create new Foo: {:p}\n", &o);
return o;
}
fn print(&mut self) {
print!("In foo print {:p} : {:p} -> {}\n", &self.val, self.p, self.val);
}
}
Output:
In foo print 0x7ffcdd36ebf0 : 0x7ffcdd36ec90 -> 123
Destroy foo 0x7ffcdd36ebf0
Исправление zaz, :
Выпелял принт - не помогло
struct Foo {
val: i32,
p: *const i32
}
impl Foo
{
pub fn new() -> Foo {
let mut o = Foo {val: 123, p: std::ptr::null()};
o.p = &o.val;
// print!("Create new Foo: {:p}\n", &o);
return o;
} fn print(&mut self) {
print!("In foo print {:p} : {:p} -> {}\n", &self.val, self.p, self.val);
}
}
Output:
In foo print 0x7ffcdd36ebf0 : 0x7ffcdd36ec90 -> 123
Destroy foo 0x7ffcdd36ebf0
Исправление zaz, :
Выпелял принт - не помогло
struct Foo {
val: i32,
p: *const i32
}
impl Foo
{
# pub fn new() -> Foo {
let mut o = Foo {val: 123, p: std::ptr::null()};
o.p = &o.val;
// print!("Create new Foo: {:p}\n", &o);
return o;
} fn print(&mut self) {
print!("In foo print {:p} : {:p} -> {}\n", &self.val, self.p, self.val);
}
}
Output:
In foo print 0x7ffcdd36ebf0 : 0x7ffcdd36ec90 -> 123
Destroy foo 0x7ffcdd36ebf0
Исходная версия zaz, :
Выпелял принт - не помогло
struct Foo {
val: i32,
p: *const i32
}
impl Foo
{
# pub fn new() -> Foo
{
let mut o = Foo {val: 123, p: std::ptr::null()};
o.p = &o.val;
// print!("Create new Foo: {:p}\n", &o);
return o;
} fn print(&mut self)
{
print!("In foo print {:p} : {:p} -> {}\n", &self.val, self.p, self.val);
}
}
Output:
In foo print 0x7ffcdd36ebf0 : 0x7ffcdd36ec90 -> 123
Destroy foo 0x7ffcdd36ebf0