📝 added note wrt. #667
This commit is contained in:
		
							parent
							
								
									fdff42bc3d
								
							
						
					
					
						commit
						76123fab76
					
				
					 1 changed files with 3 additions and 0 deletions
				
			
		|  | @ -539,6 +539,9 @@ Some important things: | |||
| * Those methods **MUST** be in your type's namespace (which can be the global namespace), or the library will not be able to locate them (in this example, they are in namespace `ns`, where `person` is defined). | ||||
| * When using `get<your_type>()`, `your_type` **MUST** be [DefaultConstructible](http://en.cppreference.com/w/cpp/concept/DefaultConstructible). (There is a way to bypass this requirement described later.) | ||||
| * In function `from_json`, use function [`at()`](https://nlohmann.github.io/json/classnlohmann_1_1basic__json_a93403e803947b86f4da2d1fb3345cf2c.html#a93403e803947b86f4da2d1fb3345cf2c) to access the object values rather than `operator[]`. In case a key does not exists, `at` throws an exception that you can handle, whereas `operator[]` exhibits undefined behavior. | ||||
| * In case your type contains several `operator=` definitions, code like `your_variable = your_json;` [may not compile](https://github.com/nlohmann/json/issues/667). You need to write `your_variable = your_json.get<decltype your_variable>();` instead. | ||||
| * You do not need to add serializers or deserializers for STL types like `std::vector`: the library already implements these. | ||||
| 
 | ||||
| 
 | ||||
| #### How do I convert third-party types? | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue