Updated constructors and pragma solidity lines.

Updated the Inheritance section of the docs in order to correct old constructor formats and update them to the new constructor() format.
This commit is contained in:
Matthew Ludwig 2018-04-20 16:50:00 -04:00
parent c8167a9acd
commit cf347745bd

View File

@ -841,10 +841,10 @@ Details are given in the following example.
::
pragma solidity ^0.4.16;
pragma solidity ^0.4.22;
contract owned {
function owned() { owner = msg.sender; }
constructor() { owner = msg.sender; }
address owner;
}
@ -875,7 +875,7 @@ Details are given in the following example.
// also a base class of `mortal`, yet there is only a single
// instance of `owned` (as for virtual inheritance in C++).
contract named is owned, mortal {
function named(bytes32 name) {
constructor(bytes32 name) {
Config config = Config(0xD5f9D8D94886E70b06E474c3fB14Fd43E2f23970);
NameReg(config.lookup(1)).register(name);
}
@ -913,10 +913,10 @@ Note that above, we call ``mortal.kill()`` to "forward" the
destruction request. The way this is done is problematic, as
seen in the following example::
pragma solidity ^0.4.0;
pragma solidity ^0.4.22;
contract owned {
function owned() public { owner = msg.sender; }
constructor() public { owner = msg.sender; }
address owner;
}
@ -942,10 +942,10 @@ derived override, but this function will bypass
``Base1.kill``, basically because it does not even know about
``Base1``. The way around this is to use ``super``::
pragma solidity ^0.4.0;
pragma solidity ^0.4.22;
contract owned {
function owned() public { owner = msg.sender; }
constructor() public { owner = msg.sender; }
address owner;
}
@ -1033,7 +1033,7 @@ Arguments for Base Constructors
Derived contracts need to provide all arguments needed for
the base constructors. This can be done in two ways::
pragma solidity ^0.4.0;
pragma solidity ^0.4.22;
contract Base {
uint x;