견고성 기초
2315 단어 solidity
// SPDX-License-Identifier: MIT
pragma solidity >=0.4.22 <0.9.0;
contract Fundraiser {
string public name;
constructor(string memory _name) {
name = _name;
}
}
생성자 매개변수에
string memory
레이블이 지정되어 있습니다. 무슨 뜻인가요? 배열 또는 문자열과 같은 참조 데이터 유형을 포함하는 매개변수에는 두 가지 선택이 있습니다.storage
memory
이러한 참조 유형은 지속형 데이터(
storage
) 또는 해당 데이터의 로컬 복사본( memory
)을 가리키는지 알려야 합니다.대부분의 경우
memory
가 올바른 선택입니다.나중에 들어갈 수 있는
calldata
도 있습니다.Solidity는 두 가지 유형의 주소를 제공합니다.
차이점은 수취인 주소는 이더를 받을 수 있고 전송 및 전송 방법을 사용할 수 있다는 것입니다.
const FundraiserContract = artifacts.require("Fundraiser");
contract("Fundraiser", accounts => {
let fundraiser;
const name = "My Fundraiser";
const beneficiary = accounts[1];
const owner = accounts[0];
describe("initialization", () => {
beforeEach(async () => {
fundraiser = await FundraiserContract.new(name, beneficiary, owner);
});
it("gets the beneficiary name", async () => {
const actualName = await fundraiser.name();
assert.equal(actualName, name);
});
it("gets the beneficiary address", async () => {
const actualBeneficiary = await fundraiser.beneficiary();
assert.equal(actualBeneficiary, beneficiary);
});
it("gets the owner address", async () => {
const actualOwner = await fundraiser.owner();
assert.equal(actualOwner, owner);
});
});
});
// SPDX-License-Identifier: MIT
pragma solidity >=0.4.22 <0.9.0;
contract Fundraiser {
string public name;
address payable public beneficiary;
address public owner;
constructor(
string memory _name,
address payable _beneficiary,
address _owner
) {
name = _name;
beneficiary = _beneficiary;
owner = _owner;
}
}
Reference
이 문제에 관하여(견고성 기초), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/maddyonline/solidity-basics-3m2a텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)