Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Blockchain for Enterprise

You're reading from   Blockchain for Enterprise Build scalable blockchain applications with privacy, interoperability, and permissioned features

Arrow left icon
Product type Paperback
Published in Sep 2018
Publisher Packt
ISBN-13 9781788479745
Length 220 pages
Edition 1st Edition
Languages
Concepts
Arrow right icon
Author (1):
Arrow left icon
Narayan Prusty Narayan Prusty
Author Profile Icon Narayan Prusty
Narayan Prusty
Arrow right icon
View More author details
Toc

Table of Contents (10) Chapters Close

Preface 1. What are Decentralized Applications? FREE CHAPTER 2. Building Blockchain Using Quorum 3. Writing Smart Contracts 4. Getting Started with web3.js 5. Building Interoperable Blockchains 6. Building Quorum as a Service Platform 7. Building a DApp for Digitizing Medical Records 8. Building a Payment Solution for Banks 9. Other Books You May Enjoy

Data locations in Solidity


Unlike other programming languages, Solidity's variables are stored in the memory and the database, depending on the context.

There is always a default location, but it can be overridden for complex types of data, such as strings, arrays, and structs, by appending storage or memory to the type. Memory is the default for function parameters (including return parameters), and storage is for local and state variables (obviously).

 

Data locations are important because they change the behavior of assignments:

  • An independent copy is always created for assignments between storage variables and memory variables. No copy is created, however, for assignments from one memory-stored complex type to another.
  • An independent copy is always created for an assignment to a state variable (even from other state variables).
  • Memory-stored complex types cannot be assigned to local storage variables.
  • If state variables are assigned to local storage variables, the local storage variables point...
lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image